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

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
* Q! h& D. ^' q" x
& m9 N0 Y) X/ a( a1 N0 g: s; L$ o

0 C5 i7 D2 {3 i1 a- V' A1.  实例目的:
' N/ C, F& t, ?. ?; R3 F通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用& k  q! G1 B/ ]# e( Y1 I  \- N; r
户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 0 z! W7 M1 d. p( n$ f: \
2.  创建过程: . P  z% L0 C1 ^: ]- r
初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C
9 }& ~" v: c8 Y/ b( }. lAPI 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
6 F6 Q/ H9 Z0 }! ]1 R/ E3 c+ Y再用  Open C++ APIs 通过获取的信息去创建对象。
$ B2 z3 z9 \2 v1 @' z: P  c同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。 : E9 b$ m3 Q8 c1 W+ X6 u* x
3.  具体步骤: # C$ D& Y) v7 o
1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ " O4 A/ G" i) }# Q0 t# e
(NXOpen::Session::GetSession())去初始化。
6 n/ A6 K1 J; A5 S: M) M" h5 E2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession(); 3 w9 n& ~6 i8 D
3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作
4 f0 I7 _7 o1 N2 z2 f部件。
, z; r* t$ S5 H) s4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 # H' c( M+ J: Q( [; Q+ p
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
. k8 A) a$ G2 D/ Y& U3 ~C APIs GetTag()  方式去获得这条直线的 tag。
  w" f2 `- @# [( V6)  通过 Open C++ API, UgLine::create()创建直线。
/ p$ {2 k+ N$ s5 _! ?7)  通过 Open C++ API, UgArc::create()创建圆弧 5 z  |9 S! ^" D2 t/ D4 P
8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
* N2 J$ D3 S4 |4 h, s* }% h0 E9)  使用 NXOpen automation APIs 保存此文件
5 E% c5 P1 S2 ]2 k' f+ O$ a  V6 D  Z10)  使用 Open C, UF_terminate()终止。 - B* f* W3 ]0 q& \
4.  如何 build 程序
$ Q$ ?# I: F& h7 N9 ]( G0 l9 T1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选
  A" v; H8 J! E; J- V择 external 模式,选择 using C++  和 Open C++ calls ( q7 T  `6 {4 w3 g+ e6 J7 d% k
2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
& G: c4 q; h: M: Y) \文件 select "Add Existing Item...".    选中文件。
' y. }3 ^0 I; v) a3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
$ r# }# U& v1 j6 _: w这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文4 X1 ^9 x' [. Y# L
件。 " }2 y5 I- C9 y+ `& N
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:
" }$ D% E2 Z) X% s! A# [a)  打开 NX 命令行窗口 NX command prompt   f; [( t3 i9 V8 _# N
b)  将路径设置到包含 cpp 文件的文件夹下 4 C6 L! Q2 s- ^/ J
c)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得4 g* p( |1 x  }# V
到这个 exe 文件。
5 v4 K, a- h8 s$ y" K) J9 Y5.  如何运行
& T2 \, G  j) o* ]4 T3 x1)  通过  Visual Studio 运行 exe 文件
+ R! N+ x$ ]& t" H7 r& s6 ~' h选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
3 x7 t$ P# F7 u8 f2 b* x) H7 K件即可查看结果
8 g6 T; @% D% r( Q4 E, o: O2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保
3 O/ z9 _+ b! e: ]7 f5 @0 W存在 exe 文件夹下,通过 NX 打开即可观看结果。
$ ]4 n) f5 K0 z/ z- J. X5 Q/ l$ R) N" o% d! P& f/ f; ~+ R
. o3 ]1 F4 C* n- \
1 P0 `1 C2 G1 B1 }+ e% u
PLMHome_基于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

你好:
  V" w- p& i. m2 g3 {3 @# K     有个问题咨询一下:
; ]7 }2 r2 y' R& @! w1 h     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??
0 z+ H8 m- B& O. \4 m     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? " E2 S4 M/ K5 F
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??( @* e8 t$ m8 ~
    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了