转载请复制以下信息:
原文链接: http://blog.csdn.net/joexiongjin/article/details/7598833
作者: 叶雄进 , Autodesk ADN
Revit 提供了Transform类来做二次开发时的坐标转换。 你可以给Transform对象进行赋值,构造一个变换矩阵。然后使用这个变化矩阵把给定的坐标点的坐标转成目标坐标系。
初始化Transform,设置其目标坐标系的三个方向向量BasisX,BasisY,BasisZ的值。
获得转换矩阵后,可以用Transform.OfPOint(XYZ pt) 把目标点坐标转换到新坐标系的坐标。也可以用Transform.OfVector(XYZ vector) 对向量进行坐标转换。
注:这里转换后点坐标或向量的单位与输入点或向量的单位相同。默认Revit API所使用的坐标单位都是英尺。
当然你可以使用第三方的代码做纯粹的坐标转换功能。
Revit API的一些函数需要坐标转换时,都需要Transform类型的。