|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解# {3 S2 ?, i+ \9 Z
3 ~% Q. j. z$ g7 r4 W' [
. ?% c4 i/ n% Z9 @* X8 t1. 实例目的: , H2 G# k Y- f9 @
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP 混合进行开发,用6 @2 J& o3 T! ^7 F0 y
户将进行初始化, UG Session 使用 Open C++和 NX Open C++的方式。 - }6 ]$ D/ I. H. j) A* V; C( A3 x
2. 创建过程:
. c+ c- h& }6 Y7 N/ R初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用 Open C # U7 e8 E, I: o1 l0 ~
API 去终止这个 session。用 NX Open C++ API 去创建对象,用 Open C APIs 去获取信息,
+ J) g( A/ Z/ c2 Y; C: c再用 Open C++ APIs 通过获取的信息去创建对象。
4 X/ e; r# w4 S- f9 p4 Z同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
2 d" g/ v, J: t3 s% U! X$ ~3. 具体步骤: & S. }+ b3 H: S! G# h% E
1) 通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 0 u& ]& K1 ~3 a# W( Z- g8 |2 g
(NXOpen::Session::GetSession())去初始化。 & C" \6 s3 T6 }2 z2 Q
2) 获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession(); ) E; p& w5 x3 t M0 B
3) 使用 UgPart::create() Open C++ API 函数创建一个新文件,此时这个文件将是工作" }: _2 F( }, m7 H& f# g
部件。 h) g7 t% m, ^( p* N* Q! S
4) 使用 NXOpen Automation API 的函数 CreateLine()创建直线。 3 \* n0 v% V; b* O' L/ V7 R
5) 通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
9 m. b! \# Z" Q) f1 BC APIs GetTag() 方式去获得这条直线的 tag。 ( |& U. w' }$ k4 x& _# K
6) 通过 Open C++ API, UgLine::create()创建直线。
8 ]: e! H0 S8 v7) 通过 Open C++ API, UgArc::create()创建圆弧 5 h) k; W8 l6 f/ B0 C
8) 获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
2 n1 h& L+ l1 E' R0 L0 K. Z- v% c, O9) 使用 NXOpen automation APIs 保存此文件 6 J$ H+ S6 C% i# l Q% \
10) 使用 Open C, UF_terminate()终止。
4 w' x' m+ _8 Z, I! e, I7 |6 [0 ^4. 如何 build 程序
/ n! j) [0 w9 K+ U6 i; B1) 是同 Visual Studio – 通过 NX Open AppWizard 创建一个新的项目,使用 wizard 选
) p% e6 ?7 I# y/ E q6 N择 external 模式,选择 using C++ 和 Open C++ calls 0 ]2 p6 c8 R# G$ P( N* c7 @
2) 增加 the InteropWithOpenCOpenCPPAndNXOpenCPP.cpp 文件通过选择增加现有的
- I8 y* v! L4 L+ o6 @: K8 P文件 select "Add Existing Item...". 选中文件。 ' c+ y5 h* i" B
3) 编译 Build 这个 cpp 通过 "Build Solution" or "Rebuild Solution". ; W! A8 M/ Y. A+ B; h) r' Z( G
这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
% t# a% }6 x! X' z) F3 G件。 " K2 M- v$ ^; z
使用 uflink 工具也可以得到这个可执行文件,具体步骤如下: 1 P. l$ L! r# M
a) 打开 NX 命令行窗口 NX command prompt
: C8 ~- i1 ~9 q. v& k3 p3 H, K4 Z. V0 M( V1 `b) 将路径设置到包含 cpp 文件的文件夹下
7 [0 C% z+ z( u. O4 {* ic) 使用 uflink ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得
% e+ z) @ ] C9 o到这个 exe 文件。 . z/ d* O$ y8 l$ e: L; G
5. 如何运行
& g$ A: g* h4 b' P3 M% P1) 通过 Visual Studio 运行 exe 文件
8 s( H9 M: C" p9 X7 A9 X选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
" A# c, S( Z" ~/ l. n. I件即可查看结果
$ P( u' g& b5 a: M$ N2) 通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保
& \& S6 \! _ E+ p存在 exe 文件夹下,通过 NX 打开即可观看结果。
8 B3 P O! t" n, X$ M7 a0 _2 |, x9 x! n/ T& \* G/ _- y' I0 o7 A/ I" m
- U% j9 ~5 X$ U, N. ~( s. l* }( ^+ v1 |/ l% w
' t. K' w1 P4 o3 W$ }- l- vPLMHome_基于OpenC_OpenCPP_NXOpenCPP二次开发讲解_plmhome.com.zip(465.46K) |
|