2

カスタムメッシュを作成しました。それはこれまでのところうまくいきます。顔作成に関してはスイッチ操作で実現しました。4 つの頂点 (0,1,2)、(0,2,3) などがある場合...

   switch (coordinates_updated.vertices.length) {

        case 5://wall
            geometry.faces.push(
                new THREE.Face3(0, 1, 2),
                new THREE.Face3(0, 2, 3));
            break;
        case 6:
            geometry.faces.push(
                new THREE.Face3(0, 1, 2),// make a triangle
                new THREE.Face3(0, 2, 3),
                new THREE.Face3(0, 3, 4));
            break;
        ...

しかし、より複雑な建物ではエラーが発生します。画像の建物を参照してください 私の問題は、建物ごとに異なる数の頂点があることです。面を自動的に (スイッチ操作なしで) オーバーラップなしで作成できるような方法が必要です。

誰でもこれを行う方法についてアドバイスやヒントを与えることができます。この種の問題を処理する方法はありますか???

4

1 に答える 1

1

あなたが達成しようとしているのは、「ポリゴン三角形分割」として知られています。問題と一般的なアルゴリズムの概要を以下に示します。

于 2016-05-08T00:22:12.477 に答える