野火论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始


查看: 40833|回复: 50

[原创] 关于ProE基于ProTOOLKIT的二次开发

[复制链接]

11

主题

132

回帖

12

威望

工程师

Rank: 3Rank: 3

积分
218
发表于 2012-11-17 10:23 | 显示全部楼层 |阅读模式
论坛中二次开发的资料也不多,原创总结的更是少之又少,因此我把我最近做的总结了一下,可能写的也不是很清楚,但大致的开发过程是一致的。
这段时间做的是结合proprogram同时基于ProTOOLKIT的一个二次开发。关于proprogram程序参数化设计总结已发在零件建模版块了。
由于proprogram是自底向上建模思路,二者结合思路相对清晰(比较传统),另外关于自顶向下建模思路大家也可以试试看。
不废话了,上资料吧【注:有部分资料是别人的】
同步开发和异步开发,我做的只是异步开发中的DLL.具体的下载文档吧,13页的word文档!

[ 本帖最后由 lxp8125 于 2012-11-17 17:18 编辑 ]
同步开发.jpg
异步开发.jpg

基于Protoolkit二次开发总结.part1.rar

240 KB, 下载次数: 1339

基于Protoolkit二次开发总结.part2.rar

196.67 KB, 下载次数: 1082

proToolkit_API函数用法.rar

16.01 KB, 下载次数: 679

User_Ts_Msg.rar

330 Bytes, 下载次数: 528

comptype.rar

1.4 KB, 下载次数: 518

Dlg.rar

802 Bytes, 下载次数: 521

gear.zip

49.1 KB, 下载次数: 641

engine.rar

225 Bytes, 下载次数: 515

Regen_Msg.rar

611 Bytes, 下载次数: 510

评分

参与人数 1威望 +5 金钱 +10 收起 理由
野火 + 5 + 10 精品文章

查看全部评分

24

主题

322

回帖

5

威望

工程师

Rank: 3Rank: 3

积分
390
发表于 2012-11-17 10:57 | 显示全部楼层
感谢分享
回复 支持 反对

使用道具 举报

1260

主题

4万

回帖

899

威望

管理员

Rank: 10Rank: 10Rank: 10

积分
47324

社区建设勋章优秀斑竹勋章原创先锋勋章热心助人勋章宣传大使勋章斑竹勋章

发表于 2012-11-17 17:56 | 显示全部楼层
谢谢朋友发布原创
回复 支持 反对

使用道具 举报

0

主题

2

回帖

0

威望

实习生

Rank: 1

积分
2
发表于 2012-12-6 10:11 | 显示全部楼层
多谢分享。
回复 支持 反对

使用道具 举报

3

主题

21

回帖

0

威望

实习生

Rank: 1

积分
28
QQ
发表于 2012-12-9 14:13 | 显示全部楼层

回复 楼主 lxp8125 的帖子

这个资料要好多金币啊。
回复 支持 反对

使用道具 举报

21

主题

310

回帖

6

威望

工程师

Rank: 3Rank: 3

积分
409
发表于 2012-12-9 18:33 | 显示全部楼层
多谢分享。
回复 支持 反对

使用道具 举报

1

主题

56

回帖

0

威望

助工

Rank: 2

积分
61
发表于 2012-12-12 08:45 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

131

回帖

0

威望

助工

Rank: 2

积分
165
发表于 2012-12-15 20:52 | 显示全部楼层
谢谢分享。
回复 支持 反对

使用道具 举报

0

主题

10

回帖

0

威望

实习生

Rank: 1

积分
20
发表于 2012-12-16 11:16 | 显示全部楼层
真心感谢啊
回复 支持 反对

使用道具 举报

11

主题

132

回帖

12

威望

工程师

Rank: 3Rank: 3

积分
218
 楼主| 发表于 2012-12-17 14:51 | 显示全部楼层
应部分坛友短信我的要求,现将下列两个函数的代码附上:
     ParamGetAndShow()        //功能:获取模型参数,显示并初始化对话框控件值
      ParamUpdate()            //功能:修改对话框控件值,更新模型参数


/*==================================================================*\
          函数:ParamGetAndShow()
        功能:从零部件模型中获得参数值,并在相应的输入框中显示
\*==================================================================*/
void ParamGetAndShow(char *dialog,char *component,char *Name)
{
    ProMdl mdl;
    ProModelitem modelitem;
    ProMdlCurrentGet(&mdl);
    ProMdlToModelitem(mdl,&modelitem);

    int iparam;
    double dparam;
    ProName pname;
        ProParameter param;
        ProParamvalue value;
        ProStringToWstring(pname,Name);

        //根据指定的参数名获得参数对象指针       
        ProParameterInit(&modelitem,pname,&param);

        //获得参数值
        ProParameterValueGet(&param,&value);

        //根据参数值的类型,显示在相应类型的输入框中
        if(value.type==PRO_PARAM_DOUBLE)
        {
                dparam=value.value.d_val;
                ProUIInputpanelDoubleSet(dialog,component,dparam);
        }
        if(value.type==PRO_PARAM_INTEGER)
        {
                iparam=value.value.i_val;
                ProUIInputpanelIntegerSet(dialog,component,iparam);
        }
        ProParameterValueSet(&param,&value);
}


/*==================================================================*\
          函数:ParamUpdate()
        功能:更新参数值
\*==================================================================*/
void ParamUpdate(char *dialog,char *component,char *Name)
{
        ProMdl mdl;
        ProModelitem modelitem;
        ProParameter param;
        ProParamvalue value;
        ProName pname;
        ProStringToWstring(pname,Name);

        int iparam;
        double dparam;
        ProMdlCurrentGet(&mdl);
        ProMdlToModelitem(mdl,&modelitem);

        ProParameterInit (&modelitem,pname,&param);
        ProParameterValueGet(&param,&value);

        if(value.type==PRO_PARAM_DOUBLE)
        {
                ProUIInputpanelDoubleGet(dialog,component,&dparam);
                value.value.d_val=dparam;
        }
        if(value.type==PRO_PARAM_INTEGER)
        {
                ProUIInputpanelIntegerGet(dialog,component,&iparam);
                value.value.i_val=iparam;
        }
        ProParameterValueSet(&param,&value);
}

[ 本帖最后由 lxp8125 于 2012-12-17 15:00 编辑 ]
回复 支持 反对

使用道具 举报

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

本版积分规则

本站为非营利性站点,部分资源为网友搜集或发布,仅供学习和研究使用,如用于商业用途,请购买正版。站内所发布的资源,如有侵犯你的权益,请联系我们,本站将立即改正或删除。

QQ|手机版|小黑屋|野火论坛(©2007~2024) ( 苏ICP备11036728号-2 )苏公网安备 32039102000103号

GMT+8, 2024-4-20 15:32 , Processed in 0.117569 second(s), 35 queries .

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