91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 7KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C/C++
  • 標簽: 三角??球體??網格??

資源簡介

用三角形擬合球體,生成.obj文件。輸出每個三角形的頂點,以及組成每個三角形的三個頂點

資源截圖

代碼片段和文件信息

#include?
#include?
#include?

typedef?struct?tagPointV3
{
float?x;?
float?y;?
float?z;
}?PointV3;
??????


typedef?struct?tagTriangleFacet
{
int?x;?
int?y;?
int?z;
}?TriangleFacet;

void?CubeTriangulation(PointV3?*?V?TriangleFacet?*?F?int?&?nV?int?&?nF?int?nS)
{
nV?=?0;
nF?=?0;
int?x?y?z;?//循環下標
for(x=nS;?x>-nS;?x--)//頂面頂點
{
for(y=-nS;?y<=nS;?y++)
{
V[nV].x?=?(float)?x;?
V[nV].y?=?(float)?y;
V[nV].z?=?(float)?nS;
nV++;
}
}
for(z=nS;?z>-nS;?z--)//背面頂點
{
for(y=-nS;?y<=nS;?y++)
{
V[nV].x?=?(float)?-nS;?
V[nV].y?=?(float)?y;
V[nV].z?=?(float)?z;
nV++;
}
}
for(x=-nS;?x {
for(y=-nS;?y<=nS;?y++)
{
V[nV].x?=?(float)?x;?
V[nV].y?=?(float)?y;
V[nV].z?=?(float)?-nS;
nV++;
}
}
for(z=-nS;?z {
for(y=-nS;?y<=nS;?y++)
{
V[nV].x?=?(float)?nS;?
V[nV].y?=?(float)?y;
V[nV].z?=?(float)?z;
nV++;
}
}
//面的頂點序號(頂面、背面、底面、前面)
int?i?j;
for(i=0;?i<8*nS-1;?i++)
for(j=0;?j<2*nS;?j++)
{
F[nF].x?=?i*(2*nS+1)+j;
F[nF].y?=?i*(2*nS+1)+j+1;
F[nF].z?=?(i+1)*(2*nS+1)+j;
nF++;
F[nF].x?=?(i+1)*(2*nS+1)+j;
F[nF].y?=?i*(2*nS+1)+j+1;
F[nF].z?=?(i+1)*(2*nS+1)+j+1;
nF++;
}
for(j=0;?j<2*nS;?j++)
{
F[nF].x?=?i*(2*nS+1)+j;
F[nF].y?=?i*(2*nS+1)+j+1;
F[nF].z?=?j;
nF++;
F[nF].x?=?j;
F[nF].y?=?i*(2*nS+1)+j+1;
F[nF].z?=?j+1;
nF++;
}
//面的頂點序號(左側面)
for(j=0;?j<2*nS-2;j++)
{
F[nF].x?=?(6*nS+1+j)*(2*nS+1);
F[nF].y?=?(6*nS+2+j)*(2*nS+1);
F[nF].z?=?nV+j;
nF++;
F[nF].x?=?nV+j;
F[nF].y?=?(6*nS+2+j)*(2*nS+1);
F[nF].z?=?nV+j+1;
nF++;
}
for(i=0;?i<2*nS-2;?i++)
for(j=0;?j<2*nS-2;?j++)
{
F[nF].x?=?nV+i*(2*nS-1)+j;
F[nF].y?=?nV+i*(2*nS-1)+j+1;
F[nF].z?=?nV+(i+1)*(2*nS-1)+j;
nF++;
F[nF].x?=?nV+(i+1)*(2*nS-1)+j;
F[nF].y?=?nV+i*(2*nS-1)+j+1;
F[nF].z?=?nV+(i+1)*(2*nS-1)+j+1;
nF++;
}
for(j=0;?j<2*nS-2;?j++)
{
F[nF].x?=?nV+i*(2*nS-1)+j;
F[nF].y?=?nV+i*(2*nS-1)+j+1;
F[nF].z?=?(4*nS-1-j)*(2*nS+1);
nF++;
F[nF].x?=?(4*nS-1-j)*(2*nS+1);
F[nF].y?=?nV+i*(2*nS-1)+j+1;
F[nF].z?=?(4*nS-2-j)*(2*nS+1);
nF++;
}

for(i=0;?i<2*nS-2;?i++)
{
F[nF].x?=?(6*nS-1-i)*(2*nS+1);
F[nF].y?=?nV+i*(2*nS-1);
F[nF].z?=?(6*nS-2-i)*(2*nS+1);
nF++;
F[nF].x?=?(6*nS-2-i)*(2*nS+1);
F[nF].y?=?nV+i*(2*nS-1);
F[nF].z?=?nV+(i+1)*(2*nS-1);
nF++;
}

for(i=0;?i<2*nS-2;?i++)
{
F[nF].x?=?nV+(i+1)*(2*nS-1)-1;
F[nF].y?=?(1+i)*(2*nS+1);
F[nF].z?=?nV+(i+2)*(2*nS-1)-1;
nF++;
F[nF].x?=?nV+(i+2)*(2*nS-1)-1;
F[nF].y?=?(1+i)*(2*nS+1);
F[nF].z?=?(2+i)*(2*nS+1);
nF++;
}

F[nF].x?=?6*nS*(2*nS+1);
F[nF].y?=?(6*nS+1)*(2*nS+1);
F[nF].z?=?(6*nS-1)*(2*nS+1);
nF++;
F[nF].x?=?(6*nS-1)*(2*nS+1);
F[nF].y?=?(6*nS+1)*(2*nS+1);
F[nF].z?=?nV;
nF++;

F[nF].x?=?(8*nS-1)*(2*nS+1);
F[nF].y?=?0;
F[nF].z?=?

評論

共有 條評論