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

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解7 r; ?( |$ ]. m5 u+ w# Y

4 t2 G( A! F% _. v0 `

( h8 h. r6 _) f9 E9 X. l1.  实例目的:
+ B1 [1 Z; Y2 J& v) z通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用
3 N1 |/ a: T  |6 b: t& O( N户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 " L) S+ _6 n3 |8 f9 ^
2.  创建过程: 7 O6 }; P  V- A
初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C # x: J& c) E% n
API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,* E5 r, y6 W9 b8 ]
再用  Open C++ APIs 通过获取的信息去创建对象。 6 A: V2 \0 X$ K: j
同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
" r# v, d# q1 n$ P6 d3 K4 w1 n3.  具体步骤: " B& F" i  t" n; Y$ e8 y2 V( ^, P
1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 9 I$ }0 u: N9 \; k  @
(NXOpen::Session::GetSession())去初始化。 " w5 \, D! P5 m& ]$ o5 v
2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession(); 9 X; Y) \. v& d4 E- @) c) b& z
3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作
8 i2 h$ E4 n+ Y7 C5 H8 u5 K; ^部件。 " i; I9 r* \# }: J7 l
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 2 b1 y( C0 L8 u: O/ G9 S! I5 {
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
- E, n! g, r" \; s/ M' y1 aC APIs GetTag()  方式去获得这条直线的 tag。
9 L: o9 p7 Q; j0 ]" m/ @6)  通过 Open C++ API, UgLine::create()创建直线。 + M0 Y; ~) i1 h9 O9 B% ~/ P
7)  通过 Open C++ API, UgArc::create()创建圆弧 ) ]0 l) j. v2 C0 A! }
8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle(). 6 q, J& j6 \; A0 T1 x: e
9)  使用 NXOpen automation APIs 保存此文件
* F( T+ t& C0 m0 }( r( P10)  使用 Open C, UF_terminate()终止。 6 a8 d: ^- {3 W* P. r2 ]) l) e3 I
4.  如何 build 程序
' V/ D  V# U8 ~6 ~. E# ?0 W3 Y1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选% s9 j' o+ m* R) R
择 external 模式,选择 using C++  和 Open C++ calls
+ }. v3 V1 x2 ~' b( G2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
" o* h3 [! M) t# w4 U- D! l文件 select "Add Existing Item...".    选中文件。
( g: Z5 r0 ]* K$ |1 m9 S3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
! J6 S$ f. R$ F这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
" u$ Q. Y4 r% h5 h$ v件。
" \1 o5 T9 L/ Q2 S使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:
  \6 ?1 \5 I4 f4 K+ D5 M! Qa)  打开 NX 命令行窗口 NX command prompt
* N; k- `2 K- t+ Ib)  将路径设置到包含 cpp 文件的文件夹下 : X2 G1 r. R1 z% D6 y, x7 T
c)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得. g5 _# p, V& H) _$ w7 m$ m
到这个 exe 文件。 8 c. x2 k. D5 @2 @# ]( h
5.  如何运行 5 U+ k, \0 ?8 S9 ]  b
1)  通过  Visual Studio 运行 exe 文件 - d( y8 }3 A0 q  ?2 w* ]1 \- `
选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
' G% U% n( T3 p0 x& r* H件即可查看结果
. ~7 m1 I5 ?. r; x2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保7 A+ u9 B* A: J4 p! W
存在 exe 文件夹下,通过 NX 打开即可观看结果。 ) }2 _" F) N  n
# I! {, t6 l+ a/ @

: ?, G4 |/ S6 U" [; L8 T3 r& n

, U2 `: [. ~. i$ j" Q2 }4 ^) j3 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

你好:: d4 ?- A  H+ g: q0 A7 i
     有个问题咨询一下:
" x7 Y4 n) n% d/ ?/ s  L0 R9 ^     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??! Q1 o/ b, z- ]. _; u8 B% H
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗??
$ r" t0 k) l0 P/ s6 l    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
& y! r( F# r% Y6 L    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了