在cython-csg中使用bsp树在网格上构造实体几何。

cython-csg的Python项目详细描述


cython csg

埃文·华莱士的javascript https://github.com/evanw/csg.js/和tim-knip原始python版本https://github.com/timknip/pycsg的cython端口。

cython csg是什么

CSG代表结构实体几何。它允许对三维对象(如减法)进行布尔运算。

用法

减法

简单的减法如下

from_cython_csgimportCSGa=CSG.cube()b=CSG.cube([0.5,0.5,0.0])c=a-bc.saveVTK('subtract.vtk')

联合体

一个简单的联合如下所示

from_cython_csgimportCSGa=CSG.sphere(center=[0.5,0.5,0.5],radius=0.5,slices=8,stacks=4)b=CSG.cylinder(start=[0.,0.,0.],end=[1.,0.,0.],radius=0.3,slices=16)a.union(b).saveVTK('union.vtk')

自定义对象

下面是一个自定义对象的示例

from_cython_csgimportBSPNode,Polygon,Vertexv0=Vertex([0.,0.,0.])v1=Vertex([1.,0.,0.])v2=Vertex([1.,1.,0.])p0=Polygon([v0,v1,v2])polygons=[p0]node=BSPNode(polygons)

如果要将其转换回csg对象,可以执行

CSG.fromPolygons(node)

安装

构建运行

python setup.py build
python setup.py install

其他注意事项

要查看输出,我建议使用paraview这样的程序

需要帮助

欢迎为源代码或文档提供修补程序

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Cassandra复制因子大于节点数   java J2EE JTA事务回滚不适用于OSE Glassfish 4.0(Build 89)   java spring安全预认证用户登录   org的java类文件。反应流。从RxJava编译示例时未找到Publisher?   java在使用dataFormat作为POJO通过Camel调用Web服务时无法设置SOAP标头   Javafx类的java静态实例   java如何防止一个部件在关闭时覆盖另一个部件的位置   sql server无法从我的java代码连接到数据库   java在JList(Swing)中显示带有的ArrayList   从Java中的CXF服务获取WSAddressing数据   使用资产文件夹进行java简单json解析(本地)   java LDAPException未绑定的无效凭据   JavaJSFspring部署到weblogic   JAVA中字符数组中的特定元素排列?   如果脚本位于不同的目录中,则ant不会使用exec标记运行Javashell脚本