|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解9 @& Z O8 t' ^
- _* H8 M- e- G. D# D. k# h% I; h5 n
- Y7 O" ]' z5 O7 T+ Q) f9 {1. 实例目的: 6 n; _2 V0 A8 }: c( |4 L
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP 混合进行开发,用* V9 Q0 V' r d& M
户将进行初始化, UG Session 使用 Open C++和 NX Open C++的方式。
) l- T% c* A, x6 k2. 创建过程: # P8 B9 @2 J4 W; p4 t( W% G. H: f
初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用 Open C
5 O+ v. l9 t$ I8 }API 去终止这个 session。用 NX Open C++ API 去创建对象,用 Open C APIs 去获取信息,
4 S) b+ V! o+ p! F5 O再用 Open C++ APIs 通过获取的信息去创建对象。
9 r }+ V! k" @; C) a( \8 S, r同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
7 e# ~, C& [4 J# Q% J# g3 q/ X8 ^3. 具体步骤:
) h( ~* Y* x7 H$ {- n0 B3 ]1) 通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 8 d6 p6 O$ ~" k5 b9 L
(NXOpen::Session::GetSession())去初始化。 4 }$ z% p1 k( w+ \
2) 获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
5 q+ p$ p0 G. {& s: W; M8 U6 w3) 使用 UgPart::create() Open C++ API 函数创建一个新文件,此时这个文件将是工作
" T+ Q; p0 P: ^部件。
- Z! r5 N: e. ?4) 使用 NXOpen Automation API 的函数 CreateLine()创建直线。 0 t) U) ~- f- y' S5 F2 Y
5) 通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open - r. F8 ]# k& T" k& z* }' w* E' Q
C APIs GetTag() 方式去获得这条直线的 tag。 7 d2 n! c; Q( R$ e
6) 通过 Open C++ API, UgLine::create()创建直线。
% {1 n; m, e/ j m7) 通过 Open C++ API, UgArc::create()创建圆弧
( ]1 O2 m5 `4 A$ w2 b8) 获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
3 O3 T; U5 s3 U7 b8 q& Z9) 使用 NXOpen automation APIs 保存此文件 1 W6 @3 `( ~5 P% `% ?
10) 使用 Open C, UF_terminate()终止。 6 O" g* K" u/ X1 ?# ?- }9 N
4. 如何 build 程序 - c! y. W, H1 q8 a1 Z, l/ [
1) 是同 Visual Studio – 通过 NX Open AppWizard 创建一个新的项目,使用 wizard 选+ C B( z) u; q" v1 O" z
择 external 模式,选择 using C++ 和 Open C++ calls
& w" ` {$ k8 d1 [- @2) 增加 the InteropWithOpenCOpenCPPAndNXOpenCPP.cpp 文件通过选择增加现有的, I3 @5 A+ [% _1 d# `
文件 select "Add Existing Item...". 选中文件。
1 c* F. l- o1 [4 ]* Y- }4 R* K3) 编译 Build 这个 cpp 通过 "Build Solution" or "Rebuild Solution". " T, j' L& p3 _. T+ _4 }
这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
0 i' z. w, T% c: Y; W# _3 x& I# k/ [件。 6 Z: V% P. f' ~3 V+ t, z, n
使用 uflink 工具也可以得到这个可执行文件,具体步骤如下: * T. q0 Y( N- k- |3 w* d
a) 打开 NX 命令行窗口 NX command prompt : f5 b+ F# ?4 n4 G7 |: l2 i0 J
b) 将路径设置到包含 cpp 文件的文件夹下
) M6 h# J: \9 Tc) 使用 uflink ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得& r( H6 D A4 S6 a
到这个 exe 文件。 & S9 c; C& a+ ?3 k
5. 如何运行
+ v& s3 z; ?; O% e% f& b" m1) 通过 Visual Studio 运行 exe 文件 ; P+ H/ t+ }+ k! o4 g
选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
( R9 f: ~) h! l; M件即可查看结果
- o5 y; B& H/ o& y! {2) 通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保) u3 L; t j' e
存在 exe 文件夹下,通过 NX 打开即可观看结果。
3 C7 t! f$ y: C4 b8 h! N+ R5 G6 D- c+ Y ?3 m: p1 |# m
& U5 T# j1 m" k& @8 y* F
9 n4 @* @: Z: R& m% Z
PLMHome_基于OpenC_OpenCPP_NXOpenCPP二次开发讲解_plmhome.com.zip(465.46K) |
|