找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 712|回复: 2

[求助]:对AcDbRegion进行transformBy失败,请问是什么原因?

[复制链接]
发表于 2008-12-27 18:54:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
AcDbRegion* pRegion = static_cast<AcDbRegion*>( arRgn[0] );

Acad::ErrorStatus eErr = pRegion->transformBy( m_mtTransform ) ;

eErr = pRegion->transformBy( Matrix ) ;
在上面的代码中,第一次transformBy返回的是Adesk::eOk,但是在执行下面的那个transformBy( Matrix ) 时返回的是
eGeneralModelingFailure,请问这是什么原因呢?
矩阵Matrix里面的值如下:
-        entry        0x0163e874
-        [0]        0x0163e874
        [0]        0.99916347666082794
        [1]        -0.00011754898706232954
        [2]        0.040792685344129033
        [3]        1916.4448266635070

-        [1]        0x0163e894
        [0]        0.040792685344129033
        [1]        0.0028792087012741762
        [2]        -0.99916347666082805
        [3]        76.630882850594617

-        [2]        0x0163e8b4
        [0]        0.00000000000000000
        [1]        0.99999169627053819
        [2]        0.0028816192430255743
        [3]        0.50601139062319822

-        [3]        0x0163e8d4
        [0]        0.00000000000000000
        [1]        0.00000000000000000
        [2]        0.00000000000000000
        [3]        1.0000000000000000
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2008-12-31 16:18:56 | 显示全部楼层
把变换的矩阵的形成的代码贴一下。
我觉得可能是矩阵还有变形因素造成的。cad的region和solid应该都不适合做变形的变换。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-1-6 17:34:09 | 显示全部楼层
AcGeMatrix3d Matrix;
m_SpineYDir = m_SpineYDir.orthoProject( vDirCur ) ;
if ( Adesk::kTrue != m_SpineYDir.isZeroLength() )
{
        Matrix = Matrix.setCoordSystem(
                        ptFirst,
                        m_SpineYDir.crossProduct( vDirCur ),
                        m_SpineYDir,
                        vDirCur );
}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-24 08:21 , Processed in 0.329666 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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