纠结的三维模型格式

//某行业的三维软件的模型格式。
 
//F_0面的标志符
//Create_Polyhedral_Face增加一个面的函数,可有有无
//8表示点的个数,6表示三角网的个数,1表示等高线
//U, V的最大值与最小值
//8,6,1主要是用来分配内存使用,也就是建立临时变量的数组的个数
F_0 = Create_Polyhedral_Face (8,6,1, /* points, triangles and contours */
                              0.000000,0.355656,28.511800,90.500000, /* limits in u and v */
                              -1,FALSE,FALSE,0); /* direction, closed in u and v, wire_frame mode */

//点的世界坐标值
//U V格式
//normal,法线,点的法线的计算
Add_Point_in_Face(F_0,0.045318,0.058548,-0.321000, /* point */
  0.355656,90.500000, /* u,v */
  0.058915,0.998263,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.046372,0.058674,-0.321000, /* point */
  0.000000,90.500000, /* u,v */
  -0.292372,0.956305,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.045673,0.058548,-0.321000, /* point */
  0.237104,90.500000, /* u,v */
  -0.059567,0.998224,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.046026,0.058591,-0.321000, /* point */
  0.118552,90.500000, /* u,v */
  -0.177213,0.984172,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.046372,0.058674,-0.259012, /* point */
  0.000000,28.511800, /* u,v */
  -0.292372,0.956305,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.045318,0.058548,-0.259012, /* point */
  0.355654,28.511800, /* u,v */
  0.058914,0.998263,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.045909,0.058572,-0.259012, /* point */
  0.158067,28.511800, /* u,v */
  -0.138195,0.990405,0.000000 /* normal */);
Add_Point_in_Face(F_0,0.045614,0.058546,-0.259012, /* point */
  0.256862,28.511800, /* u,v */
  -0.039833,0.999206,0.000000 /* normal */);

//增加三角网,三点组成三角网
Add_Triangle_In_Face(F_0,4,3,6 /* point indices */);
Add_Triangle_In_Face(F_0,3,4,1 /* point indices */);
Add_Triangle_In_Face(F_0,6,3,2 /* point indices */);
Add_Triangle_In_Face(F_0,7,0,5 /* point indices */);
Add_Triangle_In_Face(F_0,0,7,2 /* point indices */);
Add_Triangle_In_Face(F_0,7,6,2 /* point indices */);
//增加等高线
//面的指示符  等高线边数
//线的总点数, 个数,符号,
//
Add_Contour_In_Face(F_0,4 /* edges number */,
  4,1,5.009090,3,4.890540,2,4.771990,0,4.653440,
  2,0,-12.210100,5,49.778000,
  4,5,3.000000,7,2.166670,6,1.333330,4,0.000002,
  2,4,13.486500,1,75.474600);

//面结束
Face_Dvisions_in_u(F_0,0);
Face_Dvisions_in_v(F_0,0);
Add_face_in_object(O0,0,F_0);

//结构体结束
//名称,标志符
End_face_object(O0,"ABCDEF_");
//对实体进行渲染
Graphic(O0,A_TYPE_PO,MODE,SHADING,COLOR,17,TRANSPARENCY,OPAQUE,MATERIAL,NORMAL,BACK_FACE);



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值