PLM之家PLMHome-国产软件践行者

[资料] 基于OpenC_OpenCPP_NXOpenCPP二次开发讲解

  [复制链接]

2017-12-9 16:44:36 6137 4

admin 发表于 2013-10-12 19:31:17 |阅读模式

admin 楼主

2013-10-12 19:31:17

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
9 Y7 O7 C( B; w: M, {& E9 ?: y& O* K* I3 R2 j
& a! g( Z: |4 U, w" [+ e5 M9 |
1.  实例目的:
# K3 {* H- J9 @3 \1 n通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用
( L6 c- f4 z6 {2 y# [  C户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 9 B* [( I* w) a5 N
2.  创建过程: " V5 N5 u! D, D
初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C 9 ^, f: r- T/ U, Z! s
API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,4 i, X8 b- y+ I" t; U7 s* [, v/ y3 B
再用  Open C++ APIs 通过获取的信息去创建对象。 - H% F8 R/ N+ _4 m8 \% }
同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。 ) o6 U4 r9 s2 \; u; t
3.  具体步骤:
. ^6 ^: ~0 }7 b9 s+ o) B+ N1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++
! z: a9 h$ H# ?0 _! G8 N+ d! Y(NXOpen::Session::GetSession())去初始化。
8 S* q8 q0 X4 `1 u+ P: f/ ~2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
- k6 j- _& I, U% H9 d  H* v  X3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作1 ^2 c% H" n" i% l
部件。 9 r8 |/ Y1 Z0 u. Y" ]1 s) \
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 1 L2 E6 o" @) ]+ c/ [2 s4 U+ G
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
$ i& }( X9 y9 h+ {, F6 AC APIs GetTag()  方式去获得这条直线的 tag。 5 b& s  c* _) |; z+ X8 q
6)  通过 Open C++ API, UgLine::create()创建直线。 4 z0 X+ w- G  W7 r5 c; Z- t
7)  通过 Open C++ API, UgArc::create()创建圆弧
) ~+ U9 u: h/ m3 s3 t5 Q( U8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
9 D4 |4 E$ Y4 u) X8 Z5 k5 n9)  使用 NXOpen automation APIs 保存此文件
, f, a/ H* _8 B$ K10)  使用 Open C, UF_terminate()终止。 3 F! M  p. B- @6 @& c: o
4.  如何 build 程序 / {6 C- ?: y! V% @7 _9 w. D- Y
1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选4 \7 f7 L0 U+ Q
择 external 模式,选择 using C++  和 Open C++ calls
+ [' p4 ]" q! a. N! H# r2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
$ E7 G9 Z4 Z- O8 s2 r, \文件 select "Add Existing Item...".    选中文件。
7 s' J2 _3 c& L5 R( r4 z3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
4 e/ L8 {4 T/ u4 \9 p5 S4 [; ~这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
" l/ E+ F. R9 R/ k- d4 `件。 4 N; X8 ~+ f1 J  r# U, V- s, p
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:   N, S) I3 ]6 X4 `
a)  打开 NX 命令行窗口 NX command prompt
0 H5 d8 c" S0 _5 W: _( X/ B8 Ab)  将路径设置到包含 cpp 文件的文件夹下
9 q9 O9 n7 [. @+ hc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得+ X1 g. W. {: o9 R. k6 j
到这个 exe 文件。 ; O/ M3 ^7 L- o
5.  如何运行
# x. P0 j7 T/ t. i% |# Y+ ?1)  通过  Visual Studio 运行 exe 文件
- @- A; e$ A- }$ i3 D/ l选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
' L8 a8 z+ x! ^件即可查看结果
7 T, S# D' x3 C. M2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保
/ X3 ]# H  D* \- \% R) c存在 exe 文件夹下,通过 NX 打开即可观看结果。
. n) x. H2 F4 H- c! H" n* m0 m7 {* d  u& I8 r, w- ?" d
. t, T6 v. [# L' x

4 Z5 G" J* [+ C4 N/ ^' Z5 d) WPLMHome_基于OpenC_OpenCPP_NXOpenCPP二次开发讲解_plmhome.com.zip(465.46K)
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

简简单单 发表于 2013-10-13 23:54:57

简简单单 沙发

2013-10-13 23:54:57

谢谢,这是好东西
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

smthan 发表于 2013-11-20 11:14:36

smthan 板凳

2013-11-20 11:14:36

你好:
- c* Y5 I' }4 y- j( Z     有个问题咨询一下:
3 |% ]4 A% p  ?, @     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??: X& T. i8 G- @$ N- g/ |8 F0 R. M
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗??
6 C# b, C# y8 v, m  c! W2 s    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
+ o* h5 d/ H! L( A$ O' w8 t  f    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

潜行者 发表于 2013-11-28 15:31:12

潜行者 地板

2013-11-28 15:31:12

表示难度太大啊
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

至简天成 发表于 2017-12-9 16:44:36

至简天成 5#

2017-12-9 16:44:36

怎么每个都那么火,但是看不到,是不是要回复
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了