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

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解9 G% m9 u, p9 a) y+ R7 Z, M  y0 [6 h

1 n% m: D" r" e' e" k7 b: g- [& o

7 n) E1 x! s4 e1.  实例目的: / n( }2 u: e" k+ u
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用7 V" O8 H5 I/ M
户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 4 }, q; ~$ j9 r% o) {: @
2.  创建过程:
# d/ E( \9 k6 ~1 U! s初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C , Z9 d5 x5 Z! {% N: b" t+ r
API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
% `8 K- _0 a# k4 [9 W再用  Open C++ APIs 通过获取的信息去创建对象。
! F6 K8 ]' T/ l0 I同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。 8 x5 Y9 G+ ], l, Q6 h% [; C
3.  具体步骤: 6 r; i9 p, d, [, u5 ~7 {* D
1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ ; s' a/ {, T( s1 k$ c' p7 l1 M" C
(NXOpen::Session::GetSession())去初始化。
& {( ^8 h# V0 w$ J' j0 r2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
* r1 s+ ~, i+ t# U( g3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作5 @) ~; ^" X: B+ T. c# d& Q
部件。
8 U. w- ?- L/ v4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 ; ^) Q3 k" I8 e7 R6 P) Z0 x" F
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open   j9 K% |( A& E: T, Z3 f' D
C APIs GetTag()  方式去获得这条直线的 tag。 0 V% n- {2 v* E5 v: x. V2 x
6)  通过 Open C++ API, UgLine::create()创建直线。
! N6 ]4 }2 K1 x# _% M0 W, z$ w1 o7)  通过 Open C++ API, UgArc::create()创建圆弧
5 m1 _3 ^$ C! E- f8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle(). ' }# i& C# N; h4 P
9)  使用 NXOpen automation APIs 保存此文件
5 K7 }1 j: X0 R% L9 \/ _. c' @10)  使用 Open C, UF_terminate()终止。 0 F. |+ ]& }( h$ P  M8 L1 D
4.  如何 build 程序
+ k* \' @8 I2 e6 l1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选
0 Z8 {. p  c- Y* e, r择 external 模式,选择 using C++  和 Open C++ calls " a/ l* m4 F, c
2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
, O  \/ }; I1 |- D文件 select "Add Existing Item...".    选中文件。
( c2 J8 k3 |/ S4 }3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
- _7 @% \$ [. K; y/ i2 ^! }2 \这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
6 f# z9 r% g+ _& J+ M件。 ; \$ x' }8 U5 z+ D7 Z
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:
  Z6 Z. M* ?; w. m# Ma)  打开 NX 命令行窗口 NX command prompt $ w0 S$ {3 w; E) r5 \& j
b)  将路径设置到包含 cpp 文件的文件夹下
5 E* B  H3 f! [: b# ~- ^3 ]c)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得
  z: g8 _4 t9 X% T! p到这个 exe 文件。
- Y# o4 R3 R# ?0 J* R8 l5.  如何运行
4 v8 H  x3 O  k! g, t1)  通过  Visual Studio 运行 exe 文件 # U2 [- Q( Z# I% Y7 |1 p
选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
" N5 y+ K& O6 T! q$ S2 F件即可查看结果 # R, i" {3 w  d
2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保
& H' p( k$ d/ Z( L/ f. F1 o! x. A/ B存在 exe 文件夹下,通过 NX 打开即可观看结果。 * w' g  \9 e2 k" L* @, r

$ \& Y0 O( G  T( p4 _, y0 K9 J& ^. Y( ~

1 e: S2 h. c) o4 |: g/ @& gPLMHome_基于OpenC_OpenCPP_NXOpenCPP二次开发讲解_plmhome.com.zip(465.46K)
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ 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

你好:
2 {) o  C* z0 r" j9 N6 ^     有个问题咨询一下:1 W& {! n9 y* g0 a2 v' \5 {
     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??/ `7 u; f( T( S) R' M6 c, a
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? 5 v# D# t# f- _
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??! @& s% H: s4 `4 P/ F5 k
    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了