|
请使用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) |
|