您的位置:首页 > 其它

对族实例进行任意的矩阵变换,需要什么样的族?

2015-06-12 13:29 274 查看
问:

一个小问题,想向您请教一下。 能不能实现一个这样的操作:
创建了一个常规模型的FamilyInstance,然后知道旋转和平移的矩阵,能否根据变换矩阵更新FamilyInstance的位置,绕任意轴旋转任意角度。 请问什么样的实体才能在revit项目文件中任意旋转?貌似一般的实例只能在XY平面内旋转,并且LocationPoint中只有一个Rotation参数。

答:
您好,因为Revit里面的构件都是具有行为特征,收到行为约束。 比如柱子,只能绕着柱子的轴线进行旋转,这就是一个限制。 对于墙构件,只能在XOY平面内旋转。
就我所知,Revit还没有提供可以任意旋转的族实例。因为Revit族都有一个工作平面的概念。

若要实现族的空间任意定位,有三个办法
1。 ***基于面的常规族,把族实例创建在参考平面上。 在平面内的旋转用普通的旋转方法来旋转。 然再旋转其所在的参考平面,实现任意角度的旋转。
2. 直接根据不同地方的不同形状,编程序的方式创建出需要的形状和旋转位置。 然后在目标地方来创建一个族实例。
3. 创建自由实体的方法. 用DirectShape 来创建. 这个自由度更大. 比较方便.revit 2015开始提供.

希望这个办法有帮助

叶雄进, 首席技术官
橄榄山软件

转载请注明出处
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: