Revit二次开发,非常重要的一点就是几何运算,为了良好的掌握几何运算,需要对Revit内部基础的一些方法有些了解,至少都要用过才能得心应手;
Revit原本没有开放API,他开放API写的第一行代码,就是点,也就是“XYZ”,然后才有的其他API,这里就最常用的Curve进行讲解,截图只展示部分,主要内容在链接内
![29452160d8d9589d11608f6a54e534bb.png](https://img-blog.csdnimg.cn/img_convert/29452160d8d9589d11608f6a54e534bb.png)
着重说一下,Evaluate能够接受的两种Parameter,一种是NormalizedParameter,也就是比较规矩的比例数字,这个参数是比较稳定的,伸至可以断定,Evaluate(0.5)一定是中点;另一种参数是RawParameter,即“生的”数据,在线段Line中,这个Raw可以直接使用,RawParameter+一段距离,就是沿着线段方向的正常位移,但是对于Arc来说,这个东西又不准了,需要除一下长度,才能进行相应的加减运算,即如果我想找到一个Arc延伸10长度的点,应该((Arc.GetEndParameter(0)/Arc.Length)-10)*Arc.Length,然后Evaluate(XXX,False)得到,反正很奇怪,这个应该是Revit自身的Bug,文档持续更新中。。。
文档:Curve解说.mindmap
链接:
有道云笔记note.youdao.com