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二次开发:选择方式代码大全

  [复制链接]

2015-11-13 21:09:39 5611 6

admin 发表于 2014-2-18 13:07:13 |阅读模式

admin 楼主

2014-2-18 13:07:13

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

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

x
选择方式包括通过mask过滤,通过type选择,或者通过选择所有的对象。
( e* t5 y% i/ V+ |) ?# k$ y8 E' j  r7 H" @# i, `
/------------------------------------------------------------------------------# ]3 B& ^, z0 D# d/ `7 ~$ _6 p  O
// Selection with mask) u9 M% c7 c. P) t
//------------------------------------------------------------------------------8 z# h/ L# c$ _9 f+ C' s- p
TaggedObject* MyClass::select_by_mask()
. c4 t2 |9 y( i4 a$ E- n3 r+ B{0 \. J* A- ]: }) O2 T- E
NXString message("Select an object by mask:");6 \% A+ @5 O& \4 {/ @
NXString title("Select object");7 o5 i  [% c4 C4 ^- ~8 R
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;
  n! f& }. b; Q/ p: ^6 t% fSelection::SelectionAction action = Selection::SelectionActionClearAndEnableSpecific;
! u4 e2 Z' n7 T/ x7 abool include_features = 0;
: F1 O& Z. W  Z0 {bool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.
2 l1 b6 }; O$ A3 K// Uncomment or combine the desired mask triples
8 r2 i* Z5 n7 r1 |' p% a9 [std::vector<Selection::MaskTriple> maskArray(1);+ m( r! D5 k% E& g% |
maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_solid_body_subtype, 0 ); // Bodies
' j* a! H7 ], Q5 ~4 P  H/*% S$ W4 r1 i0 x3 g$ J) Q
maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_FACE); // Faces
1 [% [5 G2 q! {- ~# UmaskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_EDGE); // Edges
# P7 K6 R1 S; k# s  j$ Y1 Q" }maskArray[0] = Selection::MaskTriple( UF_component_type, 0, 0 ); // Components+ T( `9 h; N0 y$ @( N: [
maskArray[0] = Selection::MaskTriple( UF_line_type, 0, 0 ); // Lines
- b- z' B1 S- A0 i% H& n  kmaskArray[0] = Selection::MaskTriple( UF_drafting_entity_type, 0, 0 ); // Drafting objects
2 l! d9 t1 l6 N; _3 K1 V6 _( J*/0 e) ^$ o8 J: k+ [' I
Point3d cursor;6 j: W4 x" V& u  q
TaggedObject *object; // Select objects using filter defined by maskArray triples$ f+ `/ L/ k. f! T; l! a
Selection::Response res = selmgr->SelectTaggedObject(
! ], z+ @& a$ E- Z' `* C   message, title, scope, action, include_features,8 O" z( ~! N0 b3 B1 L- D
            keep_highlighted, maskArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )) ]( J* R2 R  U2 K7 M: I
{0 M1 I# v% h! J% i3 Z
  return object;
& }' y8 R5 v, B}9 k: H, }5 Q9 w8 [7 Z6 B1 o' V2 e
return 0;
  a  J  K3 A/ J  W}//------------------------------------------------------------------------------
4 y2 G8 v' i; B' u// Selection with type array
4 ]2 z- O* ~9 u% \, k//------------------------------------------------------------------------------
* I7 C+ ^* E/ p5 f5 h6 v; _* {TaggedObject* MyClass::select_by_type()
( N8 c1 _7 K. x% t7 X# z/ w{4 d5 g, Q  G$ n  u# L7 T
NXString message("Select an object by type:");
2 \8 n2 z9 `) n" [( U! s* GNXString title("Select object");
2 U6 d2 Z1 k+ H3 B* ]Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;; t3 a8 G7 E: a6 c; [0 D- ]2 @
bool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.- u- t( `2 v& h" p
// Uncomment or combine the desired types
) `0 L9 K6 U8 R) Pstd::vector<Selection::SelectionType> typeArray(1);
1 o0 o+ c; ]; L9 P6 M# DtypeArray[0] = Selection::SelectionTypeAll;( t* d* |1 ?1 W- e2 m9 [$ S& |
/*1 \, N0 G, h  Q7 W8 s: ?
typeArray[0] = Selection::SelectionTypeFeatures;
' d! e$ u0 h' d6 i) _# @: Y2 |, `typeArray[0] = Selection::SelectionTypeCurves;
% j. g9 C" d2 g  ltypeArray[0] = Selection::SelectionTypeFaces;3 Y  {; X# l$ X8 Q3 x
typeArray[0] = Selection::SelectionTypeEdges;
2 N1 z5 _* a2 A3 j5 f$ r. ?# xtypeArray[0] = Selection::SelectionTypeCurvesAndEdges;) L1 ?% L% M  r' P' h& @
*/2 S% D& b( H: y) [
Point3d cursor;# e9 }) G+ D" P- B4 s
TaggedObject *object; // Select objects using filter defined by type array7 N1 u2 j- E) X  L3 J
Selection::Response res = selmgr->SelectTaggedObject(
" J+ u& s2 u" d! l4 F   message, title, scope, keep_highlighted, 9 t- t) i$ w$ @
   typeArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )
3 N- ]0 H, Z* D8 X{# \# `" w0 ~, ^& ]2 P& p, Y
  return object;
# y) r) O- y4 @* O" [' t9 H1 w}
. r2 L! e  l$ g: q" ?- wreturn 0;% A- C% N# }8 H
}//------------------------------------------------------------------------------: \2 V. M' d9 V5 B. C" h! d3 g) A
// Selection any objects$ J/ @& M% g3 Q) U. G) s. ]. w
//------------------------------------------------------------------------------8 c0 ^+ M+ N& Y) K1 |) W
std::vector< NXOpen::TaggedObject * > MyClass::select_any_objects()
4 i0 t7 f+ Z+ b{
( b; z; J5 a7 q! L5 i- {" B0 ~9 pNXString message("Select any objects:");1 V1 N! o' C. i
NXString title("Select objects");- G/ P5 e! {1 E& _% ?7 @! _2 ~) X
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;
: w- m% O# X2 K3 _! v" B: cbool include_features = 0;
$ T* W6 D3 W, _; Xbool keep_highlighted = 0;
1 d# ^, L- j6 B, D+ m3 F. @std::vector< NXOpen::TaggedObject * > objectArray; // Select any object array! h6 Y) x" L" P) V  `9 s! c3 x# a
Selection::Response res = selmgr->SelectTaggedObjects(
2 A# M8 {0 c* `9 c; }   message, title, scope, include_features, , P3 Q2 S- a2 \, y; i
   keep_highlighted, objectArray ); return objectArray;! W" D$ ~$ [* L- N6 a
}
0 {4 A7 d4 c% K. L7 S) v! D  q! M3 `1 c
: S" J+ J' C9 b9 v9 \6 A1 u
+ T: o7 D7 ?1 ~+ a* }: Q7 d+ S
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复6

sl2651668521 发表于 2014-3-2 18:36:05

sl2651668521 沙发

2014-3-2 18:36:05

老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢
321.jpg
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-3-2 19:34:19

admin 板凳

2014-3-2 19:34:19

sl2651668521 发表于 2014-3-2 10:36% x) i0 }: o2 g
老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...

2 R( A' ^8 h5 k$ n3 ^你抱什么错; j2 @7 a2 h% R
头文件 加了么
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

admin 发表于 2014-3-2 19:34:21

admin 地板

2014-3-2 19:34:21

sl2651668521 发表于 2014-3-2 10:36
0 M& W6 H  _. B  \老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...

, G& @- Z, o5 K你抱什么错
9 R4 `6 ^; i! {& ~5 S' p# K/ A头文件 加了么
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

sl2651668521 发表于 2014-3-2 19:47:18

sl2651668521 5#

2014-3-2 19:47:18

还需要加什么头文件? 我是利用vc中ug模块建立的工程
2.jpg
1.jpg
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

wyw6686 发表于 2015-11-5 14:55:45

wyw6686 6#

2015-11-5 14:55:45

老大,这个 selmgr 是个什么东西,怎么定义啊?
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了