找回密码 注册 QQ登录
一站式解决方案

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 13767|回复: 1
打印 上一主题 下一主题

[求助] 关于拓展类型:相切连续

[复制链接]
跳转到指定楼层
1
发表于 2013-10-28 15:15:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

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

x
想请教各位大大,在CAITA的一些操作中,我们可以通过选择一条线,然后在拓展类型中选择相切连续。这样就可以选中与该线相切的所有线。我想自己写代码实现这个功能,但是目前在判断两条线是否相切卡壳了。
我目前想通过测量两条曲线的Angle。但是好像我对这个函数使用有问题,得到的角度很奇怪。下面贴出一段代码请大家指导下:       
        CATIMeasurable_var spotherObject = spspOtherEdge;
        CATIMeasurable_var spiObject = spspiEdge;
        if (spotherObject->Angle(spiObject,dAngle))
        {
                cout<<"角度"<<dAngle<<endl;
        }
得到的角度cout出来为2.32432e-308。与我用测量间距测出来的角度不相干。
后来我用CATIMeasurableInContext接口的Angle(),代码如下:        CATIMeasurableInContext_var spiMeasureEdge = spspiEdge;
CATIMeasurableInContext_var spotherMeasureEdge = spspOtherEdge;
CATMathAxis ioAxis;
spotherMeasureEdge->GetAxisSystem(ioAxis);
CATIMeasurable_var spotherObject = spspOtherEdge;
CATMeasModeOfCalc mesMode = CATMeasExactThenApproxMode;
spiMeasureEdge->SetComputationMode(mesMode);
if (spotherObject->Angle(spiObject,ioAxis,dAngle))
{
        cout<<"角度"<<dAngle<<endl;
}
得到的结果也和上面提到的差不多,不知道问题出在哪里,请大神们知道下,用别的方式能实现相切连续拓展功能的也麻烦告知下,不胜感激!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
 楼主| 发表于 2013-10-31 15:53:53 | 只看该作者

本帖子中包含更多资源

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

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

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2024-11-25 23:36 , Processed in 0.023763 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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