PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

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

[二次开发源码] NX二次开发源码分享: 导出 step格式

  [复制链接]

2018-1-7 23:25:47 3788 1

admin 发表于 2017-1-16 15:31:09 |阅读模式

admin 楼主

2017-1-16 15:31:09

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

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

x
2 z, M$ ]; |. ?  H8 ~9 h5 t
2 l" a2 w! H; K" @) ]8 u

1 N# \6 o' V( P( I" {. A. fNX二次开发源码分享: 导出 step格式$ P/ G  o4 d/ p# @& y( u- k+ Y

. B: u- x2 [' t; Z3 ^) A参考一下,很简单哦!!
1 v3 ~( ]6 L1 j7 V3 p
# e7 E* X( s& v7 _/ \void StepExport::do_it()1 v' x+ S5 I' L/ K4 K- o
{+ x- Q5 E% u; k: j% u
    std::vector<TaggedObject*> objectArray;
' v: l$ v8 ?+ x( o
, r9 K# ]. |- M# m3 Q% s. g6 L    if (select_bodies(objectArray))
3 Q- X2 `5 J" t  K0 V7 [    {" A$ O! Z/ a. q$ I! @' o/ c1 p6 |
        NXOpen::Session::UndoMarkId markId1;
, \3 _6 b% b2 U. F: H        markId1 = theSession->SetUndoMark(NXOpen::Session::MarkVisibilityVisible, "Start");
: l9 ]7 g6 z. @( x  v  N! v
; P- E/ H4 f( g: n, ^6 S        NXString sBaseDir = theSession->GetEnvironmentVariableValue("UGII_BASE_DIR");$ m/ H8 D0 D+ Y+ u, `- C
        NXString sCfgFile = sBaseDir + "\\step214ug\\ugstep214.def";
9 b' {- h; ?# L/ k/ }! U        NXString sPartSpec = displayPart->FullPath();0 c. G4 K! E0 v0 Y5 Y/ r
        std::string sFolder = sPartSpec.GetText();, i; W: I0 g- M. N5 ?# a5 V, x; N5 R
        std::size_t found = sFolder.find_last_of(".");
# ^: Y  s3 K7 e4 C# }, g        NXString sStepSpec = sFolder.substr(0, found) + ".stp";
! q& p  [4 g) A4 l5 O  C& t3 `4 g* i# Y* _* \
        NXOpen::StepCreator *stepCreator1;
* t0 g: f" @5 ?" L$ ^; H        stepCreator1 = theSession->DexManager()->CreateStepCreator();- o9 Y4 C5 n: }8 `% G( G+ M
        stepCreator1->SetExportAs(NXOpen::StepCreator::ExportAsOptionAp214);
0 h( u; b) |% H        stepCreator1->ExportSelectionBlock()->SetSelectionScope(NXOpen::ObjectSelector::ScopeSelectedObjects);
7 Q4 t1 \, K* r) k        stepCreator1->ObjectTypes()->SetSolids(true);3 m5 l9 z: Y" w1 {0 C) J
        stepCreator1->SetSettingsFile(sCfgFile);0 g: E' b  F* M2 }. F  }
        stepCreator1->SetInputFile(sPartSpec);9 |) N4 G" c3 E. E: o( e5 M4 f
        stepCreator1->SetOutputFile(sStepSpec);6 l  u) {! G) ]4 M: {
        stepCreator1->SetFileSaveFlag(false);
" b& B# w. ~. i, @0 M1 V8 U- N        stepCreator1->SetLayerMask("1-256");
- `, }6 E, H* {, t5 m$ w4 x% R& l0 h. P4 V* w# H
        std::stringstream sBodyList("");
& y  ~  l" R9 _% F- k& k9 R( a% E/ |
        std::vector<TaggedObject*>::iterator iter;% d' p" d& a0 u2 X- ^  D; m
        bool added1;5 a5 K# f3 Q5 M" y
        for (iter = objectArray.begin(); iter != objectArray.end(); ++iter)
: N  k4 j' c+ \, ^5 {9 \% B! H+ N        {% Y- g0 ]# ]7 w1 w! w2 t( l
            Body* theBody = dynamic_cast<NXOpen::Body*>(*iter);
" u2 p# C4 ?$ R            if (theBody)
% r" h7 _. b4 N& Y            {
9 j7 W7 s6 ]* r                added1 = stepCreator1->ExportSelectionBlock()->SelectionComp()->Add(theBody);
& w6 z' a2 z. [5 _& {) Z/ N( \                sBodyList << "Adding Body " << (theBody)->Tag() << std::endl;
1 \  q0 z2 \6 U2 k8 }5 T            }6 S: u( L2 f) W" A
        }
+ `+ c7 L5 D# Q/ K% P1 a/ |) H( `7 D/ b
        // Debug output1 d# _) U5 n1 o
        print("UGII_BASE_DIR = " + sBaseDir);, S3 n' C. R! b# h4 o
        print("Settings File = " + sCfgFile);0 |1 z. ?  ^# _  T
        print("Input File = " + sPartSpec);' _$ ]" @+ P. k& r2 Q7 H1 c7 \0 S
        print("Output File = " + sStepSpec);  {  }# a! A  a3 p+ M+ J1 }
        print(sBodyList.str());9 ]  r! N, L, A
6 h7 W5 x2 n+ W, f, d3 {* _
        NXOpen::NXObject *nXObject1 = stepCreator1->Commit();3 V5 x7 P/ ]+ T% y; H
        stepCreator1->Destroy();
5 K+ |. b3 P  W- ]$ H) ?    }
, p% b" t  k- e( I7 Z8 A/ d2 _4 [( n. ?/ f- Y6 y' n& y
}
9 Z& e9 b8 l. N& Y# }- M; J
6 b: X6 g3 P- X3 w% }+ A) v
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

ug_xiaofeng 发表于 2018-1-7 23:25:47

ug_xiaofeng 沙发

2018-1-7 23:25:47

请问导入dxf/dwg用哪个函数?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了