NCF参数化建筑论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 530|回复: 1

[心得体会] rhinocommon里面不同的曲线类之间怎么转化

[复制链接]
发表于 2020-10-26 18:17:50 | 显示全部楼层 |阅读模式
比如我要用c#写一个explode curve的电池,但是curve、polycurve、polyline、polylineCurve都是不同的类,curve类下面好像没有explode方法,只有polycurve下面有个explode的方法。哪位大神能解释一下这几个类的关系,它们之间是怎么转化的。

发表于 2020-10-28 20:11:53 | 显示全部楼层
一、首先看继承关系,PolyCurve和PolylineCurve继承自Curve,Polyline就是一个List<Point>。
二、我的理解,PolyCurve是多个Curve首尾相接形成的一个对象,PolylineCurve是折线(类似CAD中的多段线);
三、explode方法是将一个线条炸开,调用的前提是“这个对象能被炸开”,比如PolyCurve是多个Curve组成的,所以可以炸开,PolylineCurve是多段线(炸开的含义就是创建线段,很容易自己实现explode方法),Polyline可以用ToPolylineCurve()此函数转换为PolylineCurve。
但是请注意,NurbsCurve就没有explode的概念了,因为Rhino不知道要炸开成什么样子,只能自己实现算法(比如折线化,然后炸开为线段)。

小黑屋|手机版|NCF参数化建筑论坛 ( 辽ICP备12011358号-1 )    辽公网安备 21020302000097号

GMT+8, 2020-11-25 09:44 , Processed in 0.072382 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表