找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

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

saeba、 acoka兄等CAA高手,请指教!

[复制链接]
跳转到指定楼层
1
发表于 2005-9-5 10:53:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
CAA中如何使用Publication(发布)的几何对象来定义装配约束?  
已经获取了CATIPrdObjectPublisher对象,并通过它用GetFinalObject方法获得了装配几何对象,约束也定义成了,但是CATIA中查看约束时,发布对象的类型为“UNKnown”,但是查看对象时已经是那个相应的几何元素了,约束不成功。试图转换GetFinalObject方法所得到的CATBaseUnknown型变量,但是不成功。请各位高手指教!不胜感激!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
16
发表于 2005-12-28 14:45:06 | 只看该作者

终于解决了,原来需要"折腾"一下:

终于解决了,原来需要"折腾"一下:
pConnectorAxisOnBolt=(CATIConnector *)pAssObjInPub;
得到的轴线,或装配面不能直接使用,需下面的代码:
CATILinkableObject_var link1(NULL_var);
pConnectorAxisOnBolt=(CATIConnector *)pAssObjInPub;
link1=pConnectorAxisOnBolt->GiveReferenceObject();
pConnectorAxisOnBolt=GetConnectorByLinkableVar(link1,piInstanceProd,iActiveComponent);
GetConnectorByLinkableVar为自定义函数,就是用GetProductConnector获取CATIConnector *
不知为什么获得的pConnectorAxisOnBolt不能直接使用。我用的零件模型是CATIA自带的模型库,不知是否是模型的问题还是CATIA&CAA(V5R11)的问题。自己做的模型,对于发布的轴线来说或得的pConnectorAxisOnBolt可以直接使用,但是对于发布的平面好象还是不行,还需要这样"折腾"一下。不知为什么,如果哪位高手知道,请告之一下,谢谢!!
15
发表于 2005-12-25 11:36:23 | 只看该作者

CAA中如何使用Publication(发布)的几何对象来定义装配约束?

CAA中如何使用Publication(发布)的几何对象来定义装配约束.......
14
发表于 2005-9-7 21:37:36 | 只看该作者
CATIConnector::GiveReferenceObject() --> CATILinkableObject --> QI: CATISpecObject.
建议而已, 我也没试过.
13
发表于 2005-9-7 08:29:43 | 只看该作者
而直接从零件模型中找如何找到Publication中发布过的几何对象(如平面、轴线等)呢?
12
发表于 2005-9-7 08:26:48 | 只看该作者
acoka兄,我开始是想从CATIPrdObjectPublisher获取几何的,比如平面,获取了几何就可以很容易获取CATIConnector了。关键好象不好获取CATIPrdObjectPublisher中的几何。 CATIPrdObjectPublisher对象的GetFinalObject获得的到底是装配的几何还是xyzhu 兄说的CATIConnector_var 呢?只要能将其转换成其中的一种就可以了。
11
发表于 2005-9-6 23:20:28 | 只看该作者
你看了上面的从某个part的面获取CATIConnector例子?
  
里头有个.cpp就是从2个part各取1个CATPlane的面,然后建装配约束
你把这2个面替换成你要的东西稍微改一点应该就好用的呀
  
你怎么绕到用automation的interface了?
10
发表于 2005-9-6 19:54:11 | 只看该作者
现在通过GetFinalObject(publicationName)可以得到CATIConnector_var spConn 了,spConn 就可以直接用于装配约束吗?如下例:
  CATIAConstraint *pCst = NULL;
  CATLISTV (CATBaseUnknown_var) ConnectorList;
  ConnectorList.Append(spConn1);
  ConnectorList.Append(spConn2);
  HRESULT rc;
  rc = CreateConstraint(catCstTypeOn,ConnectorList,NULL,iActiveComponent,pCst);
  
其中spConn1、spConn2 为GetFinalObject所得到的两个CATIConnector_var,检测到变量也不为空,但是好象定义约束不成功啊,不知为什么? 请xyzhu 等 帮忙解决!谢谢
   
兄等高手帮忙解决!谢谢!
9
发表于 2005-9-6 17:39:14 | 只看该作者
我想从CATIPrdObjectPublisher获取几何的,获取了几何就可以获取CATIConnector了,关键好象不好获取CATIPrdObjectPublisher中的几何。谢谢acoka兄。
xyzhu 兄,也谢谢你不耐其烦的为我解答!CATIConnector_var spConn = spPub->GetFinalObject(publicationName); 执行后好象获得的spConn为空啊?
8
发表于 2005-9-6 16:14:59 | 只看该作者
你CATIPrdObjectPublisher里公开的几何,应该可以看作书签一样,
点spectree上的任何一个,另一个都会一起亮(即使是SubElement)
为了设计上的管理方便,实际业务上使用的时候一般会在option里限制外部autolink限制在被public的范围内
上头那个例子里应该有如何从某个part的面获取CATIConnector的source,
不行可以再参考
C:\CATIAV5R15\CAADoc\CAAAssemblyUI.edu\
里的东西
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

QQ 咨询|手机版|联系我们|iCAx开思网 ( 粤ICP备2025491344号-1

GMT+8, 2025-11-11 05:19 , Processed in 0.045709 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

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