0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用Pro/ENGINEER开发工具进行UI界面的设计

电子设计 作者:电子设计 2018-09-05 10:05 次阅读

1.引言

Pro/ENGINEER是PTC公司设计开发的基于参数化、特征设计的三维实体造型设计软件,其强大的功能一直受到业界用户的好评。

虽然Pro/ENGINEER的功能强大并且通用性良好,但是在具体使用过程中不可能满足各种各样的特定要求,为使软件能够满足特定使用者的多样化需求,则需在该软件已有功能的基础上进行二次开发。

本文是基于Pro/E Wildfire 4.0版本的设计,PTC公司推荐使用Visual Studio.NET 2005平台进行开发。

2.Pro/ENGINEER开发工具的对比分析

Pro/ENGINEER软件在提供强大的设计分析与制造功能的同时,也为用户提供了多种二次开发工具,常用的方式有Pro/Program(内置)、Pro/TOOLKIT、VB以及J-Link等。

在Pro/ENGINEER软件中,对于每一个模型都有一个Pro/Program,用于记录模型的主要涉及步骤和参数列表,其语言结构类似于BASIC高级语言。用户可以根据模型的设计要求来编辑该模型的程序,通过运行程序,系统可以通过良好的人机交互的方法来控制系统参数、特征是否显示、特征尺寸的大小等。该方式多用来开发齿轮、链轮、蜗轮蜗杆等复杂零件。

VB.NET是完全面向对象的编程语言,在它的完全模式下,实现了监听Pro/ENGINEER软件本身发出的各种消息的接口,因此也支持调用Pro/E的函数,向添加菜单、按钮等。

J-Link是Pro/ENGINEER软件自带的基于JAVA语言的二次开发工具,是一种面向对象独立于操作系统平台的应用程序接口,它封装了许多针对Pro/E底层资源调动的类库和程序包,用户可以使用来扩展Pro/E功能。

Pro/TOOLKIT是PTC公司专门定制的开发工具包,它提供了应用程序接口,使客户具有扩展Pro/E功能的能力。Pro/TOOLKIT使用面向对象风格的C语言编程,并且提供了用于底层资源调用的函数库和头文件,外部应用程序可以通过这些函数来访问Pro/E.另外,还可以利用Pro/TOOLKIT提供的UI对话框、菜单以及VC的可视化界面技术,设计出方便、实用、美观的人机交互界面,从而大大地提高了系统发的使用效率。

3.Pro/TOOLKIT工作模式的对比分析

Pro/TOOLKIT开发方式有两种工作模式:异步模式(Asynchronous)是在不需要启动Pro/E的情况下,就可以单独运行Pro/TOOLKIT应用程序的方式。但是相对来说该方式代码较为复杂,开发难度大以main()函数作为Pro/TOOLKIT应用程序的接口函数;同步模式(SynchronousMode)必须与Pro/E软件同时运行,能达到所见即所得的设计结果,相对开发比较容易;并且程序执行速度较快。在本次开发过程中,鉴于设计者并非专业程序设计人员,所以最终采用同步模式进行设计开发,比较容易上手。

在同步设计开发模式中,又分为动态链接模式(DLL模式)和多进程模式(Multiprocess)两种。多进程模式主要用于程序开发阶段以便程序的测试,但由于DLL模式运行比较快,所以程序开发完成后,最后转换为后者。

4.Pro/ENGINEER UI界面设计的对比分析

在本文的零件库的开发设计过程中,不仅有菜单的使用,还涉及UI对话框的设计以及零件的可视化表达等内容,因此,主要以Pro/Program和Pro/TOOLKIT作为主要对象加以对比分析。

用户界面对话框(User Interface Dialog Boxes,简称UI对话框)是Pro/TOOLKIT提供的一种交互界面设计工具。它能够按界面的布局编写对话框资源文件;针对UI对话框的功能编写相应的控制程序。该方式设计的UI界面和Pro/E的资源、设计风格相一致,人机交互界面风格有连贯性。但是这种利用文本文件设计的方式不能直观地反映界面的布局,设计、修改和调试比较困难。

另外采用Visual C++2005.NET与Pro/ENGINEER软件相匹配,就可以直接使用VC的面向对象的可视化集成变成系统,它具有程序框架自动生成、类别管理方便灵活,代码编写和界面设计的交互设计,3D控制界面等多种开发程式。MFC是VC++程序的界面设计开发方式,实现界面的可视化设计。

本文以直齿圆柱齿轮的参数界面设计为例,来加以对比分析。

采用Pro/Program方式,只是需要在【工具】菜单的模型【程序】

的头部,INPUT和END INPUT程序中间添加以下程序:Z NUMBER“请输入齿轮的齿数==”

… …就可以通过INPUT SEL列表来选择需要修改的参数名称,并在消息区根据提示输入新的尺寸,完成模型的修改。这种方式实现比较容易,但是人性化设计理念不强。

采用UI对话框方式进行如图所示的参数表设计,仍以齿数为例,则需要的部分程序如下:

可以看出虽然设计的界面更接近于Pro/E常用对话框的风格,但是设计语句较为复杂,实现难度较大。

使用MFC设计的对话框界面则较为容易,只需要使用Dialog对话框编辑器中的Static Text进行文字说明的编写,使用EditControl建立示例编辑框,即可完成上图界面的设计工作。需要注意的是,示例编辑框要想进行数值的传递,就必须通过【添加变量】来进行属性的编辑以及命名。其后的程序修改和调试工作也相对来说较为容易,为了实现齿数值得传递仅需要一下程序:

通过以上三种方式的对比分析,可以看到利用MFC实现对话框的设计以及参数的传递过程,相对来说比较容易,而且可视化程度高。

5.结论

本文通过市面上常用的Pro/ENGINEER开发方式入手,对比分析了Pro/Program和Pro/TOOLKIT界面设计方式的不同。从以上分析可以看出,虽然MFC的设计方式不是最简单易行的设计模式,但是其优秀的面向对象的设计方式,大大减少了开发的难度,也为更为复杂的人机交互方式提供了可能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制系统
    +关注

    关注

    41

    文章

    6523

    浏览量

    110415
  • JAVA
    +关注

    关注

    19

    文章

    2954

    浏览量

    104511
  • 开发
    +关注

    关注

    0

    文章

    365

    浏览量

    40796
收藏 人收藏

    评论

    相关推荐

    图形界面开发工具GUI Guider的使用教程

    GUI Guider是NXP推出的一款功能强大且对用户非常友好的图形界面开发工具。目前最新版本是1.6.1。
    的头像 发表于 12-20 09:49 1.6w次阅读
    图形<b class='flag-5'>界面</b><b class='flag-5'>开发工具</b>GUI Guider的使用教程

    请问SigmaStudio图形开发工具怎么使用

    功能模块,通过SigmaStudioHelp.chm文档查找,但是发觉SigmaStudioHelp.chm里面的模块和SigmaStudio图形开发工具面的位置不尽相同,比如Reverb这个模块
    发表于 10-22 10:31

    用xml配置文件的可视化工具实时模拟仿真UI界面功能

    自定义组合控件的显示......组态UI低代码开发进行复杂UI界面设计的工作时, 会遇到控件功能代码重复冗杂以及多控件布局时重复
    发表于 09-01 15:54

    pro/engineer wildfire 快速入门教程

    pro/engineer wildfire 快速入门教程 Pro/ENGINEER Wildfire 快速入门第 1 天Pro/
    发表于 01-14 16:53 0次下载

    Pro- ENGINEER教程

    Pro- ENGINEER教程
    发表于 03-02 15:36 0次下载
    <b class='flag-5'>Pro</b>- <b class='flag-5'>ENGINEER</b>教程

    STM32 VR开发工具

    STM32 VR开发工具
    发表于 02-17 13:38 39次下载

    ARM开发工具解读

    、评估板、JTAG仿真器和在线仿真器等,目前世界上大约有四十多家公司提供以上不同种类的开发产品。 Realview系列开发工具的英文全称为Realview Developer Suite,是ARM公司(www.arm.com)为方便用户在ARM芯片上
    发表于 10-18 13:29 3次下载
    ARM<b class='flag-5'>开发工具</b>解读

    图解android开发工具

    要想快速开发一个Android应用,通常会用到很多工具,巧妙利用这些工具,能让我们的开发工作事半功倍,节省大量时间,本篇经验就为大家介绍下这
    发表于 11-08 17:23 1408次阅读

    实战Pro Engineer 2001基础入门

    本书是学习 Pro/ENGINEER 2001的入门指南。本书共14章,第1章至第 2章主要介绍Pro/ENGINEER 2001的系统特性、新增功能、操作
    发表于 11-24 10:11 0次下载
    实战<b class='flag-5'>Pro</b> <b class='flag-5'>Engineer</b> 2001基础入门

    使用WinForm开发UI界面资料合集

    本文档的主要内容详细介绍的是使用WinForm开发UI界面资料合集,在实际工业控制上位机软件设计中可以作为参考。
    发表于 04-27 08:00 6次下载
    使用WinForm<b class='flag-5'>开发</b>的<b class='flag-5'>UI</b><b class='flag-5'>界面</b>资料合集

    利用YOCTO的力量进行Linux操作系统移植项目

      随时可用的 开发工具:作为 Yocto 用户,您可以访问各种开发工具,例如应用程序开发工具包 (ADT)、ECLIPSE IDE 插件、嵌入式设备的图形 UI (Matchbox)
    的头像 发表于 06-30 09:05 2962次阅读
    <b class='flag-5'>利用</b>YOCTO的力量<b class='flag-5'>进行</b>Linux操作系统移植项目

    Qt Designer中提供的原生界面元素

    Qt是一个跨平台的软件开发工具,可以使用C++、Python、Qml语言开发项目。在实际项目开发过程中,其提供了一个界面描述文件(xxx.ui
    的头像 发表于 01-29 10:42 1844次阅读

    常用的上位机开发工具

    上位机的开发工具很多,具体选择哪种开发工具需要根据具体的需求和开发经验来选择。以下是一些常用的上位机开发工具: 1. VisualStudio:VisualStudio 是一款由微软
    发表于 05-09 10:42 0次下载
    常用的上位机<b class='flag-5'>开发工具</b>

    使用Helium开发工具包和Cayenne进行GPS跟踪

    电子发烧友网站提供《使用Helium开发工具包和Cayenne进行GPS跟踪.zip》资料免费下载
    发表于 06-19 15:33 0次下载
    使用Helium<b class='flag-5'>开发工具</b>包和Cayenne<b class='flag-5'>进行</b>GPS跟踪

    Intellij IDEA 开发工具实例

    。eclipse是老牌的开发工具,可以说算是我们的初恋了,熟悉的界面,熟悉的快捷键,刚入坑时,不知道陪伴了我们多少个寂寞的夜晚。但是 Idtellij IDEA 的横空出世,也让很多人抛弃了初恋,转投新欢。我使用IDEA开发也有
    的头像 发表于 09-25 16:21 842次阅读
    Intellij IDEA <b class='flag-5'>开发工具</b>实例