请选择 进入手机版 | 继续访问电脑版

数控技术

找回密码
立即注册

QQ登录

只需一步,快速开始

微机平台的UG二次开发技巧

2012-11-2 12:53| 发布者: 静馨| 查看: 1278| 评论: 0

摘要: 本文叙述如何在以Windows NT 4.0为操作系统的微机工作站上进行基于VC++6.0的UG(V14.0)二次开发,并对UG的开发模块和UG/Open API的编程方法作了介绍。UG/Open通过一个开放的平台包含一系列的基于UG的应用软件的 ...

  本文叙述如何在以Windows NT 4.0为操作系统的微机工作站上进行基于VC++6.0的UG(V14.0)二次开发,并对UG的开发模块和UG/Open API的编程方法作了介绍。

   UG/Open通过一个开放的平台包含一系列的基于UG的应用软件的柔性集成。其目的是为了计算机集成应用,实现数据共享。它具有开放的体系结构。

   UG/Open提供了一种能够完成下列工作的应用软件和工具:1)通过UG/Open API或UG/Open GRIP提供了与UG对象模型(UG Object Model)的接口;2)生成和管理用户自定义对象(User Defined Objects或Custom Objects),包括管理它们与UG对象的相关性;3)提供反映第三方应用软件的UG图形界面本地化方法;4)利用相关产品如IMAN ITK和Parasolid;5)利用和集成新的UG/Open技术并使之成为应用可能。

   UG/Open API是一个允许程序访问并影响UG对象模型的程序集,并同时提供一个UG所共容的编译和联接程序的方式。它支持C/C++语言,头文件(header files)支持ANSI C。在UG软件系统中相关的还有:UG/Open GRIP(/NC), UG/Open MenuScript, UG/Open IMAN ITK和Parasolid。

   UG/Open API执行许可证:开发运行一个UG/Open API程序需有UG/Open开发许可证和执行许可证,用户通过UF_initialize()来访问并通过UF_terminate()来返还这些许可证。
   例程和UG/Open API头文件在用户应用平台UG安装目录下的ugopen目录里,Windows NT系统是%UGII_BASE_DIR%\ugopen,用户可以访问并利用这些程序和文件。

   UG/Open API在Windows NT操作系统里的安装

   1.UG(V14.0)要求C编译器版本为Microsoft Visual C++V5.0以上,本文所述为VC++6.0版本。
   2.定义环境变量(environment variables),定义方法:开始-设置-控制面板-系统,在“系统特性”框里点击“环境”栏,在“用户变量”里即可设置。
   必需的环境变量:UGII_USERFCN,该变量指向UG/Open API库函数所在的目录。
   其它的环境变量,1)变量:EXCEEDHOME,若欲使用包含UG/Open API Motif程序的prototypes的uf_ui_xt.h头文件时必须定义;2)变量:EXCEEDLIBS, 在uflink连接时指定应包含哪个eXceed/NT-XDK库函数时需定义;3)变量:INCLUDE,使C预处理器查找头文件(.h files);4)变量:LIB,它使C连接器查找对象库函数并输入库函数;5)变量:PATH,它使系统查找可执行文件、DLLs(Dynamic Link Library,动态连接库函数)和Scripts(命令表)。
   结论,在用户变量里定义:
   UGII_USERFCN C:\ug\Eds140\Ugopen(也可在ugii_env文件中定义)
   EXCEEDHOME C:.\ug\exceed
   EXCEEDLIBS C:\ug\exceed\xdk
   INCLUDE D:\App\VisualStudio\VC98\Include
   LIB C:\ug\Eds140\Ugopen\ugraf.lib;
   C:\ug\Eds140\Ugopen\uguser.lib;
   D:\App\VisualStudio\VC98\Lib
   PATH C:\ug\Eds140\Ugii\og1;C:\ug\exceed;
   D:\App\VisualStudio\VC98\Bin;
   C:\ug\Eds140\Ugii
   2.在VC++里创建一个UG/Open API Project
   (1)进入Microsoft Visual C++。
   (2)创建Project: File→New→Projects,对于一个Internal UG/Open API程序选Win32 D-Link Library(对于一个Extermal UG/Open API程序选Win32 Console Application);并输入Project name。
   (3)Configure(配置)Project Settings
   选Project→Settings→Debug,“Category”栏是General,在“Executable for debug session”栏内输入:C:\ug\eds140\Ugii\ugraf.exe(这是为调试Internal UG/Open API program而设置的参量);在“Program arguments :”栏内输入ogl auto。
   选Project→Settings→C/C++,在“Category:”内选Code Generation;在“Use Run-Time library:”内选Multithreaded DLL。
   选Project→Settings→Link,“Category”栏是“general”;在“Output file name:”文本框内若无缺省输出文件名就指明;在“Object/library modules:”栏末加上ugraf.lib Xt.lib Xlibcon.lib Xlib.lib(程序为Internal UG/Open API with direct X/Motif references时)。(若程序为External UG/Open API 则加上Uguser.lib;若为Internal UG/Open API without direct X/Motif references则加上ugraf.lib)。
   (4)Configure(配置)Tools Settings
   选Tools→Options- →Directories,在“show directories for:”内选Include files,在“Divectories:”内输入C:\ug\eds140\ugopen;若是Internal UG/Open API project,因要使用UG附带的支撑软件Hummingbird Exceed的include files,故再输入C:\ug\exceed\xdk\include。结论是依次输入:
   C:\ug\Eds140\Ugopen
   C:\ug\exceed\xdk\include
   D:\App\VisualStudio\VC98\Include
   C:\ug\exceed\LIB
   D:\App\VisualStudio\VC98\Mfc\include
   D:\App\VisualStudio\VC98\Atl\include
   C:\ug\Eds140\Ugii\ogl
   C:\ug\Eds140\Ugii\xwi
   D:\App\VisualStudio\VintDev98\bin
    选Tools→Options- →Directories,在“show directories for:”内选Library files,在“Directories:”内输入C:\ug\eds140\ugopen,若是Internal UG/Open API project,因要使用UG附带的支撑软件Hummingbird Exceed 的库函数,故再输入C:\ug\exceed\xdk\lib。结论是依次输入:
   C:\ug\Eds140\Ugopen
   C:\ug\exceed\xdk\lib
   D:\App\VisualStudio\VintDev98\bin
   C:\ug\exceed
   D:\App\VisualStudio\VC98\Lib    D:\App\VisualStudio\VC98\Mfc\lib
   C:\ug\Eds140\Ugii
   C:\ug\exceed\LIB
   (5)Add Files to Project
   为把源文件(source file)加到Project里,选Project→Add To Project→New,选文件类型(如C++ Source File),输入File Name,这样就可以编写源文件;或者选File→New,选文件类型(如C++ Source File),输入File Name,编写完源文件后,选Project→Add To Project→Files将该文件或其它已存的源文件加到Project里。
    (6)Compile and Link:Compile- →Build- →Execute。
   注:为检验上述工作是否正确,可以调出并编译运行%UGII_BASE_DIR%\ugopen中的ucintr.c。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

QQ|Archiver|手机版|小黑屋|网站地图|冲压机械手|联系站长|Cnc126.Com ( 沪ICP备15018029号-3

GMT+8, 2019-7-23 14:45 , Processed in 0.130273 second(s), 24 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

返回顶部