QQ登录

只需一步,快速开始

快捷登录

登录 或者 注册 请先

UG爱好者

查看: 1381|回复: 0
打印 上一主题 下一主题

[分享] CATIA V5创建字符串类型的多值参数

[复制链接]

版主

逆向正向 开发设计

Rank: 10Rank: 10Rank: 10

624

主题

1136

帖子

9243

积分
跳转到指定楼层
楼主
发表于 2019-11-30 10:09:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
 最近两个有个朋友一直在问CATIAV5创建多值参数的问题,他想创建的多值参数类型为字符串类型,代码与创建Length类型多值参数一样时,程序运行后,在catia中点击参数catia会崩溃。之前我也遇到过同样的问题,直接贴代码,测试运行通过,大家有需要的可以自行比较区别,~
 首先,贴上创建Length类型多值参数的代码:
#include "CATIParmManipulator.h"
#include "CATListOfDouble.h"
CATIParmPublisher_var spParameters2=spCkeRelationFactory->CreateParameterSet("TestParameter");   
CATISpecObject_var Parameters2=spParameters2;
spiIDescendant->Append(Parameters2);
//创建一个多值类型的Length类型的参数
CATICkeParm_var spParmTestLength=spCkeParmFactory->CreateLength("TestLength",0.0/1000);
spParameters2->Append(spParmTestLength);
CATIParmManipulator_var spParmManip = NULL_var;
spParmManip = spCkeParmFactory->CreateParmManipulator();
CATListOfDouble plist;
plist.Append(3.0);
plist.Append(5.0);
plist.Append(6.0);
spParmManip->SetEnumerateValues(&plist);
spParmTestLength->SetManipulator (spParmManip);
再贴上创建字符串类型多值参数的代码:
CATListOfCATUnicodeString pLstEnum;
pLstEnum.Append("A");
pLstEnum.Append("B");
pLstEnum.Append("C");
pLstEnum.Append("D");
CATICkeParm_var spParm = spParmFact->CreateString("Name","Value");
spParmPublisherGS->Append(spParm);

spParm->SetUserAccess(CATICkeParm::User); CATIParmManipulator_var spMan = NULL_var;
spParm->SetManipulator( NULL_var );
spMan = spParm->CreateManipulator();
if( NULL_var != spMan)
{

     spMan->SetEnumerateValues(&pLstEnum);
}


有奖推广贴子: 

任何一件事,只要心甘情愿,总是能够变得简单。不会有任何复杂的借口和理由。
回复

使用道具 举报

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

本版积分规则

 
 
QQ:1359218528
工作时间:
9:00-17:00
 
微信公众号
手机APP
机械社区
微信小程序

手机版|UG爱好者论坛 ( 京ICP备10217105号-2 )    论坛管理员QQ:1359218528

本站信息均由会员发表,不代表本网站立场,如侵犯了您的权利请联系管理员,邮箱:1359218528@qq.com  

Powered by UG爱好者 X3.2  © 2001-2014 Comsenz Inc. GMT+8, 2024-4-20 00:26

返回顶部