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 5574 6

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

admin 楼主

2014-2-18 13:07:13

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

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

x
选择方式包括通过mask过滤,通过type选择,或者通过选择所有的对象。: c9 i6 N3 B" U( M+ y

1 X% E1 j- E8 `3 J/------------------------------------------------------------------------------9 p, c+ c! Q" j3 [1 _! \
// Selection with mask
4 L! G9 J' W6 }//------------------------------------------------------------------------------
' t/ _5 _/ x5 qTaggedObject* MyClass::select_by_mask()
4 M  x8 ~2 H; K& I  `{
. }0 e1 U9 y1 v; ~NXString message("Select an object by mask:");
9 U: A& t6 _; h9 B) rNXString title("Select object");+ _8 R, }, N# p+ b$ h) X
Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;
& e6 g0 h% M  w6 j( jSelection::SelectionAction action = Selection::SelectionActionClearAndEnableSpecific;
+ j+ E* Y! r7 H$ |) Nbool include_features = 0;
3 m- g: ~% b! m3 L7 U4 U  ^bool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.: y& `: t% {* S$ g8 A! I5 o( z- H
// Uncomment or combine the desired mask triples
* [) ~1 Q% x, j) ?- _+ Fstd::vector<Selection::MaskTriple> maskArray(1);
# E8 v; c' X* v8 r2 \, r2 ImaskArray[0] = Selection::MaskTriple( UF_solid_type, UF_solid_body_subtype, 0 ); // Bodies
, a; c7 }4 f7 U( ]- l/*# T, w3 F$ I- [9 H+ S& ]7 c
maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_FACE); // Faces
0 g& D4 `( q8 r$ T, B5 O3 {maskArray[0] = Selection::MaskTriple( UF_solid_type, UF_all_subtype, UF_UI_SEL_FEATURE_ANY_EDGE); // Edges7 r, K1 P; R( L! X3 r8 a
maskArray[0] = Selection::MaskTriple( UF_component_type, 0, 0 ); // Components6 |) j; [  x" _8 W
maskArray[0] = Selection::MaskTriple( UF_line_type, 0, 0 ); // Lines
* c9 s+ O& E( f- imaskArray[0] = Selection::MaskTriple( UF_drafting_entity_type, 0, 0 ); // Drafting objects4 P3 M' O: m! B* N
*/  E, u! I% N& x1 K6 I6 w
Point3d cursor;9 y8 h* ]) H# m  n8 D
TaggedObject *object; // Select objects using filter defined by maskArray triples& G6 W0 X6 ]4 Y
Selection::Response res = selmgr->SelectTaggedObject(* f$ s9 |! }: O# n5 t# x
   message, title, scope, action, include_features,
$ U( V" Z, d* e# v: n& n6 A: z9 I8 u            keep_highlighted, maskArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )
# j6 Z/ Y/ H# u# T. b2 K* F{- e0 f3 \0 u4 h3 a
  return object;
2 b) S- _$ a. v3 T}
* Q# y3 \: _# E) W! Kreturn 0;
+ W: E+ e! H" Z( c) Q- x}//------------------------------------------------------------------------------
* F& `. M# J9 b2 ~% |// Selection with type array
2 x7 \5 J; C  `* G. |. t//------------------------------------------------------------------------------+ u' ?" D/ S& R$ f
TaggedObject* MyClass::select_by_type()
/ T2 Q2 n# a2 w# E" {0 o) s{
8 b" e4 S3 O  C) t. x+ @$ O. FNXString message("Select an object by type:");
2 A, X2 ]' S' g% ^! ENXString title("Select object");
& m' D, Q- s8 |! r5 ?Selection::SelectionScope scope = Selection::SelectionScopeUseDefault;9 [, b: k" b) [2 \$ F
bool keep_highlighted = 0; // Define the mask triple(s), see also uf_object_types.h.% o7 }' s3 b0 S* _$ [! Q
// Uncomment or combine the desired types
5 n" z- |9 ]& Lstd::vector<Selection::SelectionType> typeArray(1);
8 L4 C( Y4 Z& _% btypeArray[0] = Selection::SelectionTypeAll;
7 T  n" M6 `+ n5 t1 C' W/*
0 f8 ?0 f3 q  L7 d1 ~' ?typeArray[0] = Selection::SelectionTypeFeatures;
: v3 T7 f" p  L: m$ G; a) \typeArray[0] = Selection::SelectionTypeCurves;% x2 W) M. w6 `/ k. F3 X, L6 y
typeArray[0] = Selection::SelectionTypeFaces;6 L  c% m3 p' G8 a' W4 U8 C" @
typeArray[0] = Selection::SelectionTypeEdges;" J4 |% F3 {# g% L: v
typeArray[0] = Selection::SelectionTypeCurvesAndEdges;
$ e1 Z! r! b2 t! i  z$ P' j: v4 \*/* U$ [( b7 J% s! [
Point3d cursor;
6 K9 A1 p# U& N8 ]. G& uTaggedObject *object; // Select objects using filter defined by type array
2 e5 }7 X& ]# g, u* |2 MSelection::Response res = selmgr->SelectTaggedObject(! g# k" B: U2 g( m- X; v
   message, title, scope, keep_highlighted, + e* H: K" [/ \  c
   typeArray, &object, &cursor ); if( res == Selection::ResponseObjectSelected )
  i$ i! t* w2 e{- N' {: {8 T- B# M: k3 |6 x: I. B
  return object;
  B$ P- H( N; k3 C7 j+ N  }}
3 a) c2 n: z' d* U7 J) v/ d4 Zreturn 0;
5 f' B0 L3 A+ ?. n6 `7 w3 q- i}//------------------------------------------------------------------------------: W, v: K8 w$ w: H& ^- W2 D# K
// Selection any objects
( P: A$ ]4 c& |( M: i; [/ d% U//------------------------------------------------------------------------------% M7 I5 t0 \) ^$ P# t3 U6 L$ z
std::vector< NXOpen::TaggedObject * > MyClass::select_any_objects()
, J  Y# p, v: c# J9 S' K{
* P1 M% A4 F: K5 z/ q; C' @NXString message("Select any objects:");
2 t9 Q: M# I/ e# M( ^# INXString title("Select objects");
3 W7 A! Q7 D# A6 T' H# hSelection::SelectionScope scope = Selection::SelectionScopeUseDefault;
& y/ ^$ ~2 a' w: f& Lbool include_features = 0; ; U  A; o' Q- J' ?. Z# s/ v
bool keep_highlighted = 0;9 I0 u. O0 ^# f: q  P$ v+ a
std::vector< NXOpen::TaggedObject * > objectArray; // Select any object array
3 j* U' K* Q  N6 o- z; \  w. C) ]Selection::Response res = selmgr->SelectTaggedObjects(7 E: R2 y  V3 C7 L7 z" ]
   message, title, scope, include_features,
, ?' @  ~; A  L5 ?   keep_highlighted, objectArray ); return objectArray;% a# L% G! c( R8 m2 q% t: p( D, q$ H  @5 f
}
5 m  n# J: q3 N. B5 `" u3 ]8 L1 H  b4 \/ D" L& x5 g

5 E) I' }2 w3 ~6 z9 ^8 ~. `
2 `: I) @$ U3 k: r( ~) {
上海点团信息科技有限公司,承接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+ ^5 R  _+ \+ E; ^9 V# N" Y
老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...
4 O- _, U/ @. x: ?
你抱什么错4 o( d! j0 w; Q( P
头文件 加了么
上海点团信息科技有限公司,承接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
4 L8 W  [2 r  K- `/ k( Y老大 为什么把你的这个代码放在这里会提示错误啊。。。新手一枚,问题幼稚,请多指教 谢谢 ...
4 c6 @% U$ V3 G; i, \8 e  p1 v2 C
你抱什么错  m4 f( a4 |' A: @9 \6 l( y3 m
头文件 加了么
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了