[MSCE C++] sharecell矩阵变换问题

各位老师好:

         问题:我的测试数据(一段铁轨)中有大量重复的sharecell构件,我需要将大量的重复构件数据导出,然后通过其他三维平台展示,可是批量独立导出,数据量大也不符合三维平台展示性能需求。因此我通过遍历,以及GetDefinition函数,得到了其定义单元,并重载了IElementGraphicsProcessor,将定义单元导出为obj,然后我对原始sharecell分别在_AnnounceTransform以及GetBasisTransform分别获取了两个转换矩阵。

         我的想法是对于重复的shareCell构建,仅导出一个基本单元也就是三维实例,其他的通过矩阵将实例变换到正确的位置;但现在的问题是,我得到的定义单元和_AnnounceTransform以及GetBasisTransform两个矩阵相乘都无法复原到对应sharecell的位置,一个是位置有一定的偏移,还有就是翻转角度不对(uor也除了)。

         我想问问各位老师,我的做法有问题吗?还是我忽略了什么因素导致数据无法通过“定义单元”乘以sharecell的变换矩阵,让构件移动到正确位置(测试数据因为敏感性原因不能提供)。

Parents Reply Children
No Data