PLM之家PLMHome-工业软件践行者

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

  [复制链接]

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

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
发表于 2013-10-12 19:31:17 | 显示全部楼层 |阅读模式

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
. S1 t3 I) h, O# O/ a. |7 U/ _+ e' ^3 P; f& M

8 f2 K9 G) `9 u( I5 L- Q$ A5 T1.  实例目的:
: j$ H: q5 ^& B1 ^通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用
& n1 ~8 Z5 g/ H0 n7 C8 A( ?户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 , \2 q' Z) ]  |; O+ u. f) ^
2.  创建过程:
. A) l1 T. G( c7 X* H初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C
7 F' F9 f; y9 M) I6 iAPI 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,- Q; `$ \( a8 g
再用  Open C++ APIs 通过获取的信息去创建对象。
- Q# P) f( a3 d3 `同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。
7 ^1 p3 g2 k) a- V' G3.  具体步骤:
. n7 g% m) F  i0 ?( f# l1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ 7 g/ f! e/ s7 R# [( c8 O! d
(NXOpen::Session::GetSession())去初始化。
+ h- }* R9 Y) _2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
! H5 l2 Y4 M  L& J+ Z' E# K3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作
4 A+ ?# I2 b$ x  s$ G部件。 6 ~& l" y; T$ r$ S& k: @
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 : g" X* I) @6 s/ I  c3 n$ u9 j5 U
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open ) B) g, q" I9 J1 W2 g% E% |: N
C APIs GetTag()  方式去获得这条直线的 tag。
$ G! K5 L7 X( N6)  通过 Open C++ API, UgLine::create()创建直线。 * r, Y' |/ R1 Y$ L+ S' f# r7 o
7)  通过 Open C++ API, UgArc::create()创建圆弧
! G5 R+ [$ e$ v. n" Q9 l; ?8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle(). & e* e0 F: o0 a& X
9)  使用 NXOpen automation APIs 保存此文件 % U% W0 v' t4 I8 }: r
10)  使用 Open C, UF_terminate()终止。
1 ^; r% {/ q  {3 l  ]4.  如何 build 程序 3 A# H' p4 M. w' j0 Y$ ?% ?6 O
1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选
" U5 y; F# A: X" L择 external 模式,选择 using C++  和 Open C++ calls 8 w' W8 A; h# ~* E  ]. o, x
2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
4 e' t6 Z$ R$ P( L文件 select "Add Existing Item...".    选中文件。 ) f* S% }! o5 q. F
3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
0 b/ ^- i0 D5 n& [8 B1 w* t这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文' z3 `4 ]" z; {) B9 M7 r
件。 - f7 a- U8 d$ B1 g' b5 i
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下: " f: \2 B1 e; U9 n
a)  打开 NX 命令行窗口 NX command prompt * F( _' Y: Q5 i* m7 R( M
b)  将路径设置到包含 cpp 文件的文件夹下
- Q7 f' X$ T0 vc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得
+ [# O, j4 O5 q8 K$ _到这个 exe 文件。
3 ]0 M$ J7 ?1 X% B5 X5.  如何运行 ' B. Z, J  J7 ~1 k6 l, k6 J
1)  通过  Visual Studio 运行 exe 文件
" Z# H6 d' V/ d; |  R. d, O选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文9 ^* r/ Y7 d# D+ H/ f" N
件即可查看结果
1 p- \9 u' S% ^  m2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保: H! E$ W( n$ ~$ v# J  x# z
存在 exe 文件夹下,通过 NX 打开即可观看结果。 6 h7 [1 E/ H! u7 c" z4 S% d" V

7 M5 @2 o( l0 c* J% g
% m# d% i' L. b7 n; {

9 Q' V1 `/ i7 X  y* APLMHome_基于OpenC_OpenCPP_NXOpenCPP二次开发讲解_plmhome.com.zip(465.46K)
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

全部回复4

8

主题

58

回帖

896

积分

培训VIP会员

积分
896
发表于 2013-10-13 23:54:57 | 显示全部楼层
谢谢,这是好东西
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

3

主题

53

回帖

551

积分

高级会员

积分
551
发表于 2013-11-20 11:14:36 | 显示全部楼层
你好:4 b! F5 ?/ X$ ?
     有个问题咨询一下:
9 t# ?( v- C- D9 t6 E/ f! @5 S, ?8 H1 V     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??
7 v3 y+ [; l* v; ~     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? 8 |! a9 w' x2 p& C
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
, t8 q( L; I8 G/ ^( e" ~    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

20

回帖

44

积分

新手上路

积分
44
发表于 2013-11-28 15:31:12 | 显示全部楼层
表示难度太大啊
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

0

主题

19

回帖

117

积分

注册会员

积分
117
发表于 2017-12-9 16:44:36 | 显示全部楼层
怎么每个都那么火,但是看不到,是不是要回复
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了