マーチングキューブをC#で実装しようとしていますが、アルゴリズムが理解できず、実装方法がわからない部分に到達しました。
int Polygonise(GRIDCELL grid, double isolevel, TRIANGLE *triangles)
私が本当に理解していない3番目の議論。私はそれがポインタであることを知っていますが、後でアルゴで三角形を設定すると、変数が構造体trianglesの配列であるかのように見えます。TRIANGLE
int ntriang = 0;
for (int i=0; triTable[cubeindex,i]!=-1; i+=3) {
triangles[ntriang].p[i ] = vertlist[triTable[cubeindex,i ]];
triangles[ntriang].p[i+1] = vertlist[triTable[cubeindex,i+1]];
triangles[ntriang].p[i+2] = vertlist[triTable[cubeindex,i+2]];
ntriang++;
}
に注意してtriangles[ntriang]ください。trianglesに設定する前なので、それは意味がありませんTRIANGLE *triangles。なぜそれがポインタなのかもわかりません。