PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解( e+ g. z+ r8 p4 J) ]. S- s
) a- n1 G' b7 z( P

# @& O8 n- [" a1.  实例目的: 1 P' s: @5 E9 `) v9 U& j
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用& M- Z  n; U6 o0 Y! O& M
户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。
9 l; O+ S2 u* N5 i. z' W2.  创建过程:
: _& |) H* ~7 g. X; m5 o7 k( B" o  M初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C
, r( f9 w8 ]( X$ d5 h$ ?5 [API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
" a. K! _& H# V+ S! F3 T3 G1 |再用  Open C++ APIs 通过获取的信息去创建对象。
' `( ]: h3 g1 Q" j8 \同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。 ; d$ E* k8 q! J6 Y7 A. S
3.  具体步骤:
- U9 U, f6 k0 ]$ U, s+ P" _, s+ p  Z/ W1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++ ; @4 C7 p# z* H2 ?5 I* s4 m
(NXOpen::Session::GetSession())去初始化。
9 G% M1 t- c& H/ m. x2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
. J, B8 K1 B+ g* C) M3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作4 M  N2 }  C/ {0 N. H
部件。 % J" x; M6 |6 N" d" ~
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。
# I/ w( j6 }2 V5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open % u/ e, c* M0 U4 Z  O; S
C APIs GetTag()  方式去获得这条直线的 tag。
' }6 b8 e8 V+ L9 a! `) I+ m6)  通过 Open C++ API, UgLine::create()创建直线。 : K% Z, h) j! c' j3 B
7)  通过 Open C++ API, UgArc::create()创建圆弧
5 d+ x8 R7 j1 n- M, W2 F8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle(). 6 M# S# N+ n3 I4 D4 Z
9)  使用 NXOpen automation APIs 保存此文件 1 P# Q5 h+ ?; Z! K
10)  使用 Open C, UF_terminate()终止。
2 J# [* P- z4 W% i3 N! a4.  如何 build 程序 % s: S! Z5 H6 n/ e
1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选- C6 Q( `$ [7 H) v3 N% @' M$ z; k
择 external 模式,选择 using C++  和 Open C++ calls
/ s  y  C6 d* Q! K" r2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
. t5 k( D" m2 M3 u" M  i& V: X文件 select "Add Existing Item...".    选中文件。 8 k5 c4 X+ S; s! F0 f
3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution".
) k2 n' L0 I0 q( k2 m9 ?: f1 A这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文
2 B4 [% g) A( E6 w# O3 O) ?9 o件。 + v7 E9 {; f5 y4 v( D; y, O
使用 uflink  工具也可以得到这个可执行文件,具体步骤如下:
7 s. l6 m. }1 H5 ^! F1 ka)  打开 NX 命令行窗口 NX command prompt + s# N) D0 r9 g/ [- r6 D
b)  将路径设置到包含 cpp 文件的文件夹下
" S& j( ]; Y4 e0 g% Zc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得, T% y% m1 ^) S
到这个 exe 文件。
1 u1 [3 ^  G! `- `* V5.  如何运行 ' f* q! E8 }5 B# K) M$ k
1)  通过  Visual Studio 运行 exe 文件 ' C8 g' v1 V& n( _& A+ v) G
选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
+ ]2 e) @" V% D' [7 N& ?4 p$ `件即可查看结果
- V- k/ m8 I7 n2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保# K" t$ @; @# ?4 }$ R
存在 exe 文件夹下,通过 NX 打开即可观看结果。 8 n& B% H9 N% N/ `- P

+ \9 o! |# }: M2 Q6 S4 c1 h& e+ I- c! s
& O/ S. L4 |) X7 o  j  O
PLMHome_基于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

简简单单 发表于 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

你好:! m. E9 M& r* w* Q
     有个问题咨询一下:
' }8 i' e$ D& O2 K1 B1 A* e0 U     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??3 U2 @& _3 [" d8 P
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? 3 E* k5 o3 c' [! w
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??0 `0 R0 L7 \! c+ M% |" W
    还请您指点一下,谢谢!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了