1、先看效果图

图一是笔者使用solidworks随手画的,并没有特殊含义,只是特意拉伸几个形态各异的孔,以凸显截取模型层面的效果,长方体整体的尺寸是600600400;
图二是程序运行的效果图,C++控制台程序,模型处理使用的是cgal库,画图用的是openGL,截取的高度是z=200的位置。(csdn图片的大小安排不如之前那么方便了,布局莫名奇妙~)
2、整体思路
1)solidworks画出三维模型,然后另存为stl文件,stl文件是用三角形面片表示的三维网格,文件存储的是点和三角形面片信息,有ASCII和binary两种存储格式,其中ASCII格式可以用记事本打开,binary用记事本打开则会乱码,这里使用ASCII格式保存,这些都可以在solidworks中设置,不过,现在主流的三位模型软件都可以生成stl文件,如UG之类的(不得不说笔者更喜欢UG呀,但是也就那样吧,用电脑画图没意思,还是手画比较惬意~);
2)写一段python脚本,将stl转换成off文件,off文件同样是三维模型的存储文本文件,不过相对stl而言