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-国产软件践行者

[二次开发源码] NX二次开发:选择方式代码大全

  [复制链接]

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

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

admin 楼主

2014-2-18 13:07:13

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

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

x
选择方式包括通过mask过滤,通过type选择,或者通过选择所有的对象。4 {! d4 u: h5 I. B, f9 u5 Y

. e; O: X  b. x' ~/ {/------------------------------------------------------------------------------6 {- v2 j2 U! ?% I# d
// Selection with mask# f' A4 s+ w; u2 W; g1 T: r
//------------------------------------------------------------------------------
5 V# A8 @; l) @TaggedObject* MyClass::select_by_mask()4 h1 r' A/ u8 O. I8 o! o
{
. i- j. U- w' Q8 h# sNXString message("Select an object by mask:");
% `; S& n) T! @* C$ m: d% v) CNXString title("Select object");* K  o8 }7 R2 P0 w4 l6 B
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;7 k' e% t% Y. n" z% U
Selection::SelectionAction action = Selection::SelectionActionClearAndEnableSpecific;
& G6 ^; z8 V9 z8 R3 Wbool include_features = 0;% J7 e( E$ a0 G" ~4 |, r
bool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.
( d2 n: h' Q  C) A) F// Uncomment or combine the desired mask triples+ F1 [2 r/ A" s  d7 B( I, d
std::vector<Selection::MaskTriple> maskArray(1);
% ^4 |6 K6 Q. T  y( y0 \( _* EmaskArray[0] = Selection::MaskTriple( UF_solid_type, UF_solid_body_subtype, 0 ); // Bodies
* x( y5 e0 ~) _: g/*! k1 ]6 B  X! y9 Y! ^, Z
maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_FACE); // Faces9 t# f( Q# z9 ?8 B
maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_EDGE); // Edges
+ s/ x( E' s. lmaskArray[0] = Selection::MaskTriple( UF_component_type, 0, 0 ); // Components
% ]/ B* `( b4 l. I3 B" g! tmaskArray[0] = Selection::MaskTriple( UF_line_type, 0, 0 ); // Lines$ H3 g. J% W8 a# h
maskArray[0] = Selection::MaskTriple( UF_drafting_entity_type, 0, 0 ); // Drafting objects
4 [/ b/ Q+ Y. |- ]. N: |*/
+ f) b& _& f9 a$ ?1 @( JPoint3d cursor;2 Y% }( b3 P: p' v  Q6 g8 }& q
TaggedObject *object; // Select objects using filter defined by maskArray triples3 v: E1 W1 P6 u' K, I2 c) v
Selection::Response res = selmgr->SelectTaggedObject(
- e5 q: \; b0 C) o7 m, M" G   message, title, scope, action, include_features,7 K( K5 w& ?  `1 o* @2 M+ M, J
            keep_highlighted, maskArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )# _; R2 q3 o) J; R+ W" K" w
{+ {: i2 D; t5 ^1 f
  return object;# H+ Z/ _; V' q6 z/ m
}
  K0 c  N8 p# j! \9 p$ s3 N# Rreturn 0;
  ]$ d4 w, N( V4 W}//------------------------------------------------------------------------------
7 v; L7 O0 t; o! O// Selection with type array
8 H* `+ x9 v" w//------------------------------------------------------------------------------/ X  w0 T6 ]5 o* p
TaggedObject* MyClass::select_by_type()
# ?8 n" s: u7 v+ c{
7 B; o. Y9 P0 JNXString message("Select an object by type:");
5 _* k" n/ t6 G! ~7 k; @9 k4 r) aNXString title("Select object");$ i7 g1 r! u& a- s
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;
5 e( H6 K, \3 H# s2 q# Y- Rbool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.
2 B5 A( b' S& P+ p3 w0 g0 ~// Uncomment or combine the desired types
% r7 \. t$ `: n; I& e4 \std::vector<Selection::SelectionType> typeArray(1);" ~6 y7 K9 l8 w
typeArray[0] = Selection::SelectionTypeAll;* R8 }2 d" A6 I$ Z4 Q6 ^# {- m
/*
8 B) u2 X% p8 {( P2 u& K% O; DtypeArray[0] = Selection::SelectionTypeFeatures;% j( c1 v  j/ P* n& N& c$ n
typeArray[0] = Selection::SelectionTypeCurves;# a0 ?, }9 j# ~9 n% e
typeArray[0] = Selection::SelectionTypeFaces;
8 u7 \2 p; ~$ S4 XtypeArray[0] = Selection::SelectionTypeEdges;. x+ }% k, `2 ?/ L
typeArray[0] = Selection::SelectionTypeCurvesAndEdges;2 G7 m! z; w! q3 }1 q+ G
*/
+ d; w% h2 y: R7 C0 x" N. EPoint3d cursor;+ U3 G* t" ^5 y% y1 G2 C5 j& g! h
TaggedObject *object; // Select objects using filter defined by type array' ?  V2 v# H% o$ _7 K( I
Selection::Response res = selmgr->SelectTaggedObject(
1 [! e, ?  C8 P+ S, R5 `; t( X   message, title, scope, keep_highlighted, + ]+ ?4 I: r  G! i% v: k7 W/ h; S
   typeArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )- \! d! j% `% q+ n; n3 R7 @7 F
{
( P# M1 L6 C0 o4 v! I, D  return object;1 N+ T' p' @( v) F: T
}
1 g5 G# }; l' n; x5 N' v# L$ Areturn 0;/ S; ]3 p  C. q4 Y% K
}//------------------------------------------------------------------------------
. C9 U7 Z9 C' l2 b// Selection any objects
9 K3 S9 t- {/ e//------------------------------------------------------------------------------, V: ]: t# x! I6 J5 n& U* q3 I  E
std::vector< NXOpen::TaggedObject * > MyClass::select_any_objects()7 k8 B- R% k6 o6 }5 T0 F0 J' `$ r1 Q
{
! ~3 |% l/ w9 t  q& E. zNXString message("Select any objects:");; B' h' s: _) [: Z, v$ Q  P
NXString title("Select objects");+ a% X9 ]0 G; U3 `  Q1 |
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;! `# U" ~3 [  m/ Q) `
bool include_features = 0; 4 Q5 @( j6 ^8 e- u
bool keep_highlighted = 0;
  ]. E0 Y% p$ N5 Istd::vector< NXOpen::TaggedObject * > objectArray; // Select any object array# s. ~5 w4 g% ?* F
Selection::Response res = selmgr->SelectTaggedObjects(
6 S- M$ m" X! w* l   message, title, scope, include_features, * q. ]8 R) s& ]3 w* ?
   keep_highlighted, objectArray ); return objectArray;
' S# ^2 l! p2 `}
3 p: c) L1 N# w7 R( R
/ l9 h$ ?# A$ k& h2 \- ]0 n- x6 e3 `* \2 u1 R: o6 x
' N: d9 U5 {0 g, h* d  o, h
上海点团信息科技有限公司,承接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
! x5 g# d8 _. A老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...
( v) E/ g- C2 X$ i
你抱什么错
6 y. O2 p# }, k9 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" P( f& h( t& `& O$ D* F5 B+ o0 J
老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...
8 K) k; }" v( g6 y8 W3 M% M
你抱什么错5 z+ a# a5 @/ W5 z! F
头文件 加了么
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了