PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

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

  [复制链接]

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

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

admin 楼主

2013-10-12 19:31:17

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

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

x
基于OpenC_OpenCPP_NXOpenCPP二次开发讲解
4 q' a* E3 R) T/ [
8 I# w2 Z- G- x+ Y

. {# J9 o/ `" U1.  实例目的: ) \$ e$ R- [' C+ j3 ^
通过此实例,可以让大家明白如何使用 OpenC OpenCPP NXOpenCPP  混合进行开发,用2 b4 |/ z/ q/ N, U8 K: S/ {( {
户将进行初始化, UG Session  使用 Open C++和 NX Open C++的方式。 9 O* [' s) v7 F' j. \/ B/ Q
2.  创建过程: ' }" e7 b6 @4 Z6 s$ c* b
初始化一个 session,使用 Open C++ API 函数去创建和保存一个文件,同时使用  Open C
$ b$ ~2 ^, \4 B* e1 n/ h( y$ _API 去终止这个 session。用  NX Open C++ API 去创建对象,用  Open C APIs 去获取信息,
" r. E; ~, I$ |再用  Open C++ APIs 通过获取的信息去创建对象。 ! f* }4 F) u3 e2 X6 a5 Y
同时使用 Open C++ APIs 创建圆弧,获取信息,保存这个文件。 . v: E% K# `1 f' V' U) q% W+ J
3.  具体步骤: ' T2 P: ~7 D4 K, q  z( l! B
1)  通过 Open C++ API 函数 UgSession::initialize()进行 session 初始化,抑或使用 NX Open C++
) F3 Z! B" E8 `& J# m! ?(NXOpen::Session::GetSession())去初始化。
# j& p; b' E' I; S8 D0 \  I) C) M2)  获取 session 使用 NX Open C++ API, NXOpen::Session::GetSession();
' Q3 q; t" |: {3 L& D3)  使用 UgPart::create()    Open C++ API  函数创建一个新文件,此时这个文件将是工作& X# Z6 {- a& {
部件。 % v2 G) s" x& Q2 Y6 X9 S2 W9 f0 [
4)  使用 NXOpen Automation API  的函数 CreateLine()创建直线。 + r; {( N3 G" ]* z0 b$ p1 Q
5)  通过 Open C API, UF_CURVE_ask_line_data()获取创建直线的 object data。通过 Open
9 z% `' P9 V, UC APIs GetTag()  方式去获得这条直线的 tag。 ) |  y$ X" d$ k/ d7 {
6)  通过 Open C++ API, UgLine::create()创建直线。 3 {4 l9 I: e( \# z- S  h& n" d
7)  通过 Open C++ API, UgArc::create()创建圆弧
% d% H9 p5 f9 ?  w* v/ _* v  T8)  获取圆弧信息 GetRadius(), GetStartAngle(), GetEndAngle().
0 O6 R0 r! p- h2 k; Q9)  使用 NXOpen automation APIs 保存此文件
% }3 r% p( ^$ X; j& Y10)  使用 Open C, UF_terminate()终止。
+ e4 i$ b3 q) Y' T3 {, }, R4.  如何 build 程序 9 Z; s1 I$ c8 s. w' e3 ?1 t: g6 ]
1)  是同 Visual Studio –  通过  NX Open AppWizard 创建一个新的项目,使用 wizard 选
  N5 k! o; s# r) b8 M- c# r$ L! ?择 external 模式,选择 using C++  和 Open C++ calls
( ]+ w& f+ G  U( K% c5 y8 U6 x2)    增加 the  InteropWithOpenCOpenCPPAndNXOpenCPP.cpp  文件通过选择增加现有的
2 n  h' n! W+ H' U文件 select "Add Existing Item...".    选中文件。 , h+ D; T2 |0 e9 m6 w5 V5 @
3)  编译 Build 这个 cpp 通过  "Build Solution" or "Rebuild Solution". 0 b0 h$ X0 `' X$ f
这时在 debug 的文件下面会得到 InteropWithOpenCOpenCPPAndNXOpenCPP.exe 文" s- F  `% V! H
件。
7 m% V  v( M  T8 l# N, J3 G( b使用 uflink  工具也可以得到这个可执行文件,具体步骤如下: % A4 i$ s0 ]: v7 Z( Q( j
a)  打开 NX 命令行窗口 NX command prompt 9 R# L0 j* C: E! U+ m0 ]+ K2 O
b)  将路径设置到包含 cpp 文件的文件夹下
7 _& M* O& Q& r8 B" F, \) i2 k4 Pc)  使用 uflink  ufexe=InteropWithOpenCOpenCPPAndNXOpenCPP.exe 就可以同样得
# U( u: I' n6 V1 w" S: I到这个 exe 文件。
3 k$ c% B: R3 I% [) ~# o! p! r! }5.  如何运行 6 m# ]5 U- h+ i0 [: u: o5 G
1)  通过  Visual Studio 运行 exe 文件 + d+ e- `8 Y, N/ @  `
选择 Debug->Start,这时 InteropWithOpenCOpenCPPAndNXOpenCPP.prt,打开 NX 文
* D- ~3 J* g; E8 \3 {: G' i件即可查看结果 ! w& Y/ m4 B  F1 C% W
2)  通过打开 NX 命令行窗口 NX command prompt 执行,这个我 prt 文件将会自动的保- e' A; P$ J& B4 s; j$ v
存在 exe 文件夹下,通过 NX 打开即可观看结果。
6 c' }. j; A& |! i' E( _9 w7 E: p! B* U1 S0 b
6 [- h, M2 X! a% w
% O% C# N5 D* C7 z' h. Z3 ], f! A
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 网址 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

你好:* x) c; H$ H5 O9 F
     有个问题咨询一下:* `- e8 U6 l" k9 Q' _3 j0 E' S
     NX OPEN C++ 只能使用 namespace NXOpen 里面的函数吗??& j: Y' J- N1 U  @8 s
     NX OPEN .NET 里面不是有很多函数吗,这些NX OPEN C++不能用吗?? ! N1 U# T4 `8 \- w7 @0 i
    比如我想用NXOPEN.UF命名空间里的东西,怎样才行呢??
+ Y( ^) Y5 C' Z/ D' ?2 k& 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二次开发专题模块培训报名开始啦

    我知道了