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

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
+ s" u% l, A5 n! B; R
  s8 C  D" O( C
' s* d, T8 C% F9 v! U  m
1.  实例目的:
7 j, A+ x- Y" a: A通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用" N) Z% [+ _6 [$ _
户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 4 B, T& A8 B) T7 k* O
2.  创建过程:
0 n: G. N2 O* f: b8 S, ]4 @& [初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C ) t3 i, e2 E* ^2 Z3 N/ i
API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
7 D! m0 f2 m3 q9 a8 x) h5 \& k  x- ?  u再用  Open C++ APIs 通过获取的信息去创建对象。 % R3 V4 }, ~' v  P
同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
0 o1 X% E# w5 I3.  具体步骤:
3 h6 A. P  l0 T% r1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 2 A- K8 q7 T5 d) ^2 V% ]. h$ F
(NXOpen::Session::GetSession())去初始化。 / A; z+ F) m7 w" o; L) }# i3 `+ b
2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession(); * K, Q1 ^) X, r: M4 M9 x+ P% o# m2 w
3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作
( ]2 D) Z6 H  y! _* `1 f部件。 % v  v) ?- G* v. o0 c( [
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。
" E1 o8 w% |: e: Q/ V5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
: O9 V" _! O" [( H& x/ UC APIs GetTag()  方式去获得这条直线的 tag。 1 L/ K4 I9 {) p' w( K
6)  通过 Open C++ API, UgLine::create()创建直线。   u  p! I( `& s, r& c1 N
7)  通过 Open C++ API, UgArc::create()创建圆弧
- J! Z& v& B" ^& Q: j8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
6 \$ f( u5 `+ i( e- V$ z9)  使用 NXOpen automation APIs 保存此文件
$ u0 I8 U/ M! Y- c# ?* U  c10)  使用 Open C, UF_terminate()终止。
, M1 w( `4 F, d# b4 C' Y, c2 Y' C0 x4.  如何 build 程序 + V( a# f' j1 y0 N" O  W
1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选0 A  i6 y3 g$ ?9 \
择 external 模式,选择 using C++  和 Open C++ calls
  Y. I" T# ~9 F* X2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的  h" B5 K. _6 _) c5 ^" k/ t
文件 select "Add Existing Item...".    选中文件。
# ?. T" A; z6 J) k. K; {! y3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution". , p( T" A" n5 |) ?
这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
+ W' e8 C2 h5 M6 @# D! X0 O1 y件。
' `* i5 D6 y! _* k使用 uflink  工具也可以得到这个可执行文件,具体步骤如下: % j7 d1 G/ ?( I. ^1 g+ Q
a)  打开 NX 命令行窗口 NX command prompt
4 @! I9 D$ h, H; A6 ub)  将路径设置到包含 cpp 文件的文件夹下
. e' [% L% \' o( q9 h* Oc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得; x% ?) H$ A. J& d9 [4 i7 S/ u9 U
到这个 exe 文件。 & Q- {$ h$ @2 _7 l. _  t
5.  如何运行
& [' u. k, c, L1)  通过  Visual Studio 运行 exe 文件
6 _9 o4 t& Z/ X4 a! @5 L选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
* O4 ~3 _- r; C件即可查看结果 ' D$ V) j6 x% O( ^
2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保6 a% r. Q2 A3 e3 ]- `4 b* O
存在 exe 文件夹下,通过 NX 打开即可观看结果。
9 ]* m* ]* [, H1 q; A  Y
( q: a1 ^' a$ e6 R) {- W  J: \4 s0 _, l/ L7 g
1 @- J* K5 M; i9 G. Y
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

你好:
' [3 r+ ?5 s# ]3 M/ m0 S/ x+ s& g9 r; q     有个问题咨询一下:
, T2 P6 ]0 p1 N1 r     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??2 _, Q/ e' J9 P% h1 S
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? " \' ^# {  R( R" @8 E7 v% \
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
4 I4 ]3 W1 T5 [1 q' l, I    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了