iCAx开思工具箱

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 26266|回复: 5
打印 上一主题 下一主题

CAA交互模式的参数化设计

[复制链接]
跳转到指定楼层
楼主
发表于 2011-12-17 18:52:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

马上注册登录,享用更多网站功能!

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

x

想做一个交互模式的参数化的例子,现在交互界面做好了(如图),参数化驱动程序写完了,但是运行时一直有点问题,感觉应该是获取参数列表和参数赋值有问题,但一直解决不了,功能实现的主要代码如下,程序框架在附件上,请指点。

//内存中加载零件
HRESULT rc=E_FAIL;
CATDocument * pDocument=NULL;
CATUnicodeString ModelDocName="F:\savefile\catia_development\zhou.CATPart";
rc = CATDocumentServices::OpenDocument(ModelDocName,pDocument);
if (SUCCEEDED(rc))
{
CATInit *pInitOnDoc=NULL;
rc = pDocument->QueryInterface(IID_CATInit,(void**)&pInitOnDoc);

//获取零件的根容器
CATIPrtContainer *pIPrtCont = NULL;
pIPrtCont=(CATIPrtContainer *)pInitOnDoc->GetRootContainer("CATIPrtContainer");

//获取零件设计特征
CATISpecObject_var spSpecObjectPart = pIPrtCont->GetPart();
if (NULL_var != spSpecObjectPart)
{
//获取参数列表
  CATIParmPublisher * pIParmPublisher = NULL;
  rc = spSpecObjectPart->QueryInterface(IID_CATIParmPublisher,(void**)&pIParmPublisher);
  if (SUCCEEDED(rc))
  {
    CATUnicodeString L1="L1";
    CATUnicodeString L2="L2";
CATLISTV (CATISpecObject_var) List ;
CATICkeParm *pICkeParm = NULL;
pIParmPublisher->GetAllChildren("CATICkeParm",List);
int Nb = List.Size();
if ( Nb >= 1 )
{
  CATISpecObject_var specObj = List[1] ;
  rc = specObj->QueryInterface(IID_CATICkeParm,(void**) &pICkeParm);
    }      

//根据特征尺寸依次获取参数并赋值

if (pICkeParm->Name()==L1)
{
    L1=pICkeParm->Content();
       CATUnicodeString msg;
    double OutputReal;
    msg = _pL1Editor->GetText();
    int IsConversionOK = msg.ConvertToNum(&OutputReal);
    OutputReal = OutputReal/1000;
    pICkeParm->Valuate(OutputReal);
}
else
{
  L2=pICkeParm->Content();
  msg = _pL2Editor->GetText();
  int IsConversionOK = msg.ConvertToNum(&OutputReal);
  
  OutputReal = OutputReal/1000;
    pICkeParm->Valuate(OutputReal);
}
ObjectUpdate(spSpecObjectPart);
  }
}
}

图片1.png (47.78 KB, 下载次数: 15)

图片1.png

MyFrame2.rar

391.61 KB, 下载次数: 69, 下载积分: 贡献 -2

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 支持支持
沙发
 楼主| 发表于 2011-12-21 21:12:51 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
板凳
发表于 2012-1-11 16:34:27 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
地板
发表于 2012-2-4 14:34:14 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
5
发表于 2013-11-4 21:17:02 | 只看该作者

马上注册登录,享用更多网站功能!

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

x
6
发表于 2013-11-4 21:17:22 | 只看该作者

马上注册登录,享用更多网站功能!

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

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

本版积分规则

手板模型制作,在线3D打印服务

QQ|小黑屋|手机版|开思工具箱 CAD工具箱_CAM工具箱  

GMT+8, 2024-12-22 23:31 , Processed in 0.019265 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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