PLM之家PLMHome-工业软件践行者

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
3 B+ {/ F1 N3 [; Q
" s2 g! q$ h9 h( @. a

' ~- m1 J. Y. @; K7 T1.  实例目的: 3 L& Z0 R9 q0 O
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用
! u- j0 G% A& V1 t8 L) g户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 % }2 w! O) B0 q; l! k
2.  创建过程:
* {4 j0 c( {1 I! U% ?0 j: F初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C
8 d6 W, K% o: S8 }4 y/ C( TAPI 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
6 i" P7 R+ {6 s9 {9 e1 c再用  Open C++ APIs 通过获取的信息去创建对象。 # `: i: G8 n" `$ L( M1 G* M
同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
8 _% i8 i$ W; @4 E( c2 k* W' {3.  具体步骤: ' w  H9 i9 y2 X' B
1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 2 w3 @/ Q: Y& y" _+ t3 t
(NXOpen::Session::GetSession())去初始化。
/ s4 n: q8 [* _$ }  Q8 o2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession(); - I- k) t) {9 U+ O2 i
3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作
9 o) ~  _9 A% \9 p6 p! v6 \+ C部件。 7 G( o8 @' U$ \' u" B% m
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 ) d! @; O/ B: {' E
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
4 J% G! k$ T' KC APIs GetTag()  方式去获得这条直线的 tag。 3 [; o3 U* }) }5 W, L  d
6)  通过 Open C++ API, UgLine::create()创建直线。
2 x* k& j( r: }6 \8 d6 H7)  通过 Open C++ API, UgArc::create()创建圆弧
% f  A8 t; C# m+ A/ J8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
9 F. |) _" D. g- F1 q9)  使用 NXOpen automation APIs 保存此文件
# |. N- o6 @( k0 X8 [  a10)  使用 Open C, UF_terminate()终止。 3 ^7 I$ y# @- }+ m( ?- \
4.  如何 build 程序
/ O6 s# r2 D3 O2 }( a# _1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选& ]8 l2 {3 {# E. D3 G2 F' O
择 external 模式,选择 using C++  和 Open C++ calls
* c! h, z$ \' q2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
, g$ g: a8 U. z, A5 |( [7 e) b文件 select "Add Existing Item...".    选中文件。 + O# v* J7 H+ _2 {' g  K
3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
6 G0 ~# k! g5 m/ f. h6 ?( F8 |这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文* E# D3 P/ W' t5 B6 r$ F# G
件。 9 v! R  _4 ^: b2 {0 u
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:
4 Y4 N6 d* O: e2 _) g/ v% O, Ta)  打开 NX 命令行窗口 NX command prompt + F+ R5 t1 F9 B0 u/ g5 ]
b)  将路径设置到包含 cpp 文件的文件夹下
; J. H, F, V% d- p) f) n, q& Jc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得
& [- W8 x5 w6 i9 ~" I到这个 exe 文件。 * y5 E1 F! \3 D$ P* O- l
5.  如何运行
9 M, w0 u$ t$ C1 e. X1 M$ |1)  通过  Visual Studio 运行 exe 文件
, `! {4 y9 V6 m选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文! C, i# }! f& }% N% x: u
件即可查看结果 5 v% m8 k2 h8 O0 E+ L! ]
2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保
4 t% }/ t9 w; v; g存在 exe 文件夹下,通过 NX 打开即可观看结果。 + Z1 ^0 r- w) P7 {

6 N2 J) P% F5 ^: N$ Y
* j9 H  v5 Y; Z" a( t' X+ Z1 {2 W2 F# K

, k: Y0 Q, w9 B7 i* CPLMHome_基于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

你好:1 G2 t0 O2 ~) t' q2 i; B
     有个问题咨询一下:
  A3 x6 }& h  q3 d     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??
; s" E2 }! V2 d  `     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗??
' f. ~0 s# L2 Z- p    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
4 w) ^: k4 `6 O/ N( r    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了