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

iCAx开思网

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

CATICkeParm 之间相互赋值的问题

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

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

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

x
如创建了两个数值型(int,fact,double)的  如何将X1的值赋给X?
CATICkeParm_var X1 = fact ->CreateReal("X1",20);
CATICkeParm_var X = fact ->CreateReal("X",0);

再比如创建了两个字符型的  又如何将spString1赋给spString2
CATICkeParm_var spString1=spFact->CreateString("ModuleName","CAALifRelations");
CATICkeParm_var spString2=spFact->CreateString("rojectKey","");

求解惑   谢谢!{:soso_e176:}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2012-11-29 12:58:50 | 只看该作者
    你的意思是将两个参数创建关系吗?当一个参数改变时,第二个参数会跟着改变~~~
CATCkeListOf(Parm) ParamList6;
     ParamList6.Append(spPar1);

     CATICkeParm_var spPar2 = spCkeParmFactory->CreateLength( "XXX", 0.);
     CATICkeRelation_var spParamRelation = spCkeParmFactory->CreateFormula("XX", "","",spPar2  , &ParamList6,"a1", NULL_var,CATCke::False);//其中a1表示ParamList6列表中的第一个元素
     spFunctionFactory->AddToCurrentRelationSet(spPar2 );
     CATISpecObject_var spSpecParam2=spParamRelation ;
     spParamRelation ->Update();     spParameters2->Append(spParamRelation );
3
发表于 2012-11-29 13:00:20 | 只看该作者
或者是X->Valuate(X1->Value()->AsReal());,但是这样就木有Relation
4
发表于 2012-11-29 15:26:01 | 只看该作者
linlily0925 发表于 2012-11-29 12:58
你的意思是将两个参数创建关系吗?当一个参数改变时,第二个参数会跟着改变~~~
CATCkeListOf(Parm) P ...

丽丽 我想问一下  spParamRelation ->Update(); 是不是应该用spSpecParam2 ->Update();
再就是spParameters2->Append(spParamRelation );
这里面的spParameters2是个什么类型 做什么的呢?
5
发表于 2012-11-29 15:33:34 | 只看该作者
嘿嘿 ,是的,我写错了,不好意思哈~~~

CATIParmPublisher_var spParameters2=spCkeRelationFactory->CreateParameterSet("AA");//新创建的参数集                       
6
发表于 2012-11-29 21:55:00 | 只看该作者
linlily0925 发表于 2012-11-29 15:33
嘿嘿 ,是的,我写错了,不好意思哈~~~

CATIParmPublisher_var spParameters2=spCkeRelationFactory->Cr ...

CATIParmPublisher_var spParameters2=spCkeRelationFactory->CreateParameterSet("AA");//新创建的参数集
        CATCkeListOf(Parm) ListOfParm;
        ListOfParm.Append(iGravX1);
        ListOfParm.Append(iGravX);
        CATICkeRelation_var spRelation= fact ->CreateFormula("Relation", "", "", iGravX , &ListOfParm, "a1",NULL_var, CATCke::False) ;

        if(NULL_var!=spRelation)
        {
        //spFunctionFactory->AddToCurrentRelationSet(iGravX);
    CATISpecObject_var spSpecParam2=spRelation;
    spSpecParam2 ->Update();
        spParameters2->Append(spRelation);
        }

除了 spFunctionFactory->AddToCurrentRelationSet(iGravX);  报空指针的错外,其他的都没问题。   我把这句话注释过后,可以生成公式,这里算是学到了。
谢谢 丽丽!
7
发表于 2012-11-30 09:48:00 | 只看该作者
zsong22 发表于 2012-11-29 21:55
CATIParmPublisher_var spParameters2=spCkeRelationFactory->CreateParameterSet("AA");//新创建的参数集 ...

spFunctionFactory->AddToCurrentRelationSet(iGravX);应该是 spFunctionFactory->AddToCurrentRelationSet(spRelation);接口为空?那你判断下spFunctionFactory是否为空
spFunctionFactory  = CATCkeGlobalFunctions::GetFunctionFactory();
8
发表于 2012-11-30 10:07:02 | 只看该作者
linlily0925 发表于 2012-11-30 09:48
spFunctionFactory->AddToCurrentRelationSet(iGravX);应该是 spFunctionFactory->AddToCurrentRelation ...

那怎么删除关系呢?
9
发表于 2012-11-30 10:45:37 | 只看该作者
linlily0925 发表于 2012-11-30 09:48
spFunctionFactory->AddToCurrentRelationSet(iGravX);应该是 spFunctionFactory->AddToCurrentRelation ...

刚才是 因为我这个地方弄错了!spFunctionFactory  = CATCkeGlobalFunctions::GetFunctionFactory();

我还用的QI方式,所以报错!
10
发表于 2012-11-30 11:04:47 | 只看该作者
珊瑚草 发表于 2012-11-30 10:07
那怎么删除关系呢?

CATIParmPublisher->RemoveChild ()
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

GMT+8, 2024-12-28 06:41 , Processed in 0.026771 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

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