|
01、选择对象/ K! }9 \) X/ F0 U: r) O" x
: S' T z$ s- }6 X7 Z, i
捕捉) ?1 D+ B5 w* V) Z; m. i3 p5 ]! F
PointOverlay 是否显示捕捉点4 v. j v: h9 }4 ?" }& I j/ ^$ t3 D
SmartUpdateOption 智能更新选项
( v7 m1 m/ l. y! B" y* | i$ K% A Within Modeling 在建模
3 m' F. V/ h6 p% u- h, L3 H. y, P After Modeling 建模后5 @# N" D/ s2 R
After Parent Body 实体父后' a a9 J1 {+ F v& Z' D
Mixed 混合
! l& g5 e3 V( R- z5 ~5 I6 n
* e. J' e) F% A$ D7 O! G SnapPointTypesEnabled 设置捕捉点类型的可见性# D$ a" w2 g$ I+ y8 ^2 g: `
SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用* z& W: _5 V& o; k/ C! n
+ K; b5 |7 K& Y' E" x
常规( Q: u9 ^9 h% U z* s+ ~- C
BlockID 控件id
' e* N0 B; P" B$ r1 G8 e4 c. i8 Q Enable 是否可选/禁用控件
8 V. \" u& l$ v2 }3 I Group 组9 _: L- A: F; n* J5 o3 o; R
Show 是否可见
9 t; y4 d4 X; j, [
2 `. l0 h+ E5 c( d& o5 F其它 * N2 W+ `- L+ E! o' j- G
附着
2 R' |3 ?# z4 j+ T- E% V Bottom 底
2 M2 |/ t, z8 u' H2 m Left 左
7 \5 ^: `1 P( p- j1 d: n% j Right 右: j' y d/ `" c g |# v
Top 顶, s6 H. a% T/ M$ G8 N: e8 E
- y$ w0 w2 X4 b/ K* r7 V) }
特定于块
8 G: v1 U$ ~% Z) [1 I AutomaticProgression 选择后焦点是否自动跳到下一个控件
- C! k. S4 ~9 \" e BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)" q! G% W- b3 d- x0 ^
BalloonTooltipLayout 动态提示布局: [2 K; o% X" V3 u- z' p
BalloonTooltipText 动态提示文本内容! O/ O H3 o1 r/ [, E2 [' Y' e: G
Bitmap 指定图片- X0 J2 h: W* ]3 x
BlendVirtualCurveOverlay 是否显示虚拟交线; o* N# u! u5 K+ `
CreateInterpartLink 是否显示部件间连接图标在选择条上
' [3 K5 E& }" G5 g, a/ W% I Cue 提示6 u( |+ Q( m+ z/ F9 a
! E D( K# o/ B7 n* l c
InterpartSelection 部件间选择设置+ Q0 J# S* J9 {1 s: _, `5 c4 J
Simple 简单- p/ t/ a. U, i. t% E- U/ ` P _
Non-associative Interpart Copy Only 只复制部件间非关联
7 s& L# b, ?# x8 b3 G3 k Associative and Non-associative Interpart Copy 复制部件间关联和非关联
1 a0 a( e! l# E4 Z Associative Interpart Copy 复制部件间关联1 Z7 e% M" f$ T9 c+ I/ Z) f
/ z6 {. r8 w/ P9 e6 V8 ]$ q LabelString 标签标题
2 M0 c7 s. k4 e! J MaximumScops 设置选择范围. I+ R* U+ q) l! _
Entire Assembly 所有组件/装配( r" m0 t" `" h
Within Work Part Only 只是工作部件
) h0 t3 B/ D9 _ Within Work Part and Components 工作部件和组件/装配)
5 Z* K! v5 G7 a) ^, j2 J: _
" o/ r: ^: L9 {$ J0 O" f# K SelectMode 设置单选/多选 u/ y% Y# B) y( z' A9 p+ m
Single 单选
/ H8 `+ ?# Y: a8 m( d Multiple 多选# B9 o* W$ V, l+ Y+ G" u
# m7 K2 I3 o/ d7 s0 p
StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)0 u' T, G* A7 p3 g5 M
Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)
& Q, t8 Y! I% u; t3 T
/ G& a) N2 e" E$ @————————————————————————————————————————————/ I! v# |3 x& i
————————————————————————————————————————————3 N& g2 H) Q7 M; F/ V% J# p
咧子:获得selection0控件选择的对象
+ f7 @$ @# Q5 F2 L8 K) p8 p0 Y" _ UF_initialize();
$ P9 y" u" p' U j8 M1 L) { std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");9 ]7 ~; R# T& k
for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数
! u; a1 T! a: @- ~9 m$ O { 3 f6 U4 @, B5 f# l) |
UF_OBJ_set_color(objects[i]->Tag(),1);3 y( s* f3 i" ?4 f& Z
}
! M5 f# p" J1 M4 h' v UF_terminate();# {3 `& s5 \9 x+ l' o
% _: `# q- D6 x: X7 x" w————————————————————————————————————————————
+ ^+ i4 f# u$ l8 L- b$ |咧子:对象加入到selection0选择控件的对象列表8 H9 P, L5 h4 B% s; T
1 o9 Z# v; K4 y4 S0 Y; b
tag_t obj=NULL_TAG;
f0 z- E; X; ?4 f X double point[3]={0,0,10};. |; h% K! G! n" W
double XYZ[3]={60,50,80};
5 B; i( N U9 X }3 d# x char C[132]="";
6 Y' M7 I* n& G/ Z1 P9 `7 o5 S: V char K[132]="";
! y# N6 m! G) K: \; D$ o- \+ q char G[132]="";3 [- C3 c$ \4 D1 J- ?8 |
sprintf(C, "%f",XYZ[0]);2 ^' \5 \) ~9 _+ o& g* y2 ~8 \
sprintf(K, "%f",XYZ[1]);
1 f) |' }+ @" u+ D/ G; t M3 f2 [ sprintf(G, "%f",XYZ[2]);
' m/ \$ M0 f9 m4 x2 ] char * edge_len[3]={C,K,G};
$ V. M) [# ?/ m3 D/ L/ E9 M. X UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方0 I8 k7 @( e( E: c
UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体* S, O3 ~* ^! P
* ~( ]1 E8 J9 f$ v6 V- c- P Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen
$ y) M) l0 Z3 g" `: o8 f \. }' M std::vector<TaggedObject*>objects;! @- K' g2 h: R9 h4 e& q7 D
objects.push_back(body1); //对象加入到selection0选择控件的对象列表4 I' r8 |" A0 H5 [6 s2 o( ]
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
( `$ S" x% _/ t9 [. x————————————————————————————————————————————
0 p, W' p% V7 z S# u5 L( G* Y
4 S; e9 t( Q$ W//清除对象* c# }, E$ ~% V
std::vector<TaggedObject*>objects;* i6 V3 B, d2 U5 [
objects.empty();
) J- G S$ B C( T \/ x/ Uselection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
9 ?$ W& Q1 F' r: s/ r9 D0 K: j1 Q9 ]3 F
————————————————————————————————————————————
$ |( ` C m+ n+ I咧子:只选择面 _5 M; Z2 q3 o0 w9 x) l$ S0 [# U7 ^
initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤& i7 F* f; {( r U) u; E0 s
& {, Y4 R+ e0 ~: S
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式" N7 T e3 M( ^9 t
; l8 z, n, a- c5 X) X
//对象选择过滤 只能选表面
! a* B( N' V, r$ z2 R selection0->GetProperties()->SetString("LabelString","选择表面");
; K3 z+ [( a$ |8 H) y# t f9 k7 ` R std::vector< NXOpen::Selection::MaskTriple > maskTriple;3 @1 c- T/ R( K# j% A
Selection::MaskTriple mask1(UF_face_type,0,0);7 M; ] D- c/ M! O* }
maskTriple.push_back(mask1);- u& v8 y3 M' ]( x/ d
selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);
: d t1 R4 N" q; ?
, Q3 M$ [; A( }/ b6 {2 V
- b' R9 J3 Q8 C% P9 @1 r `0 e) C咧子:只选择面 【UG本身过滤器跟着变】: ^9 w8 P6 }$ _- b' T9 E
initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
2 r3 C: f6 L. i6 R! a$ F
/ V( Z" E5 P9 c) n* o* l$ c, c selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
0 d) Z: N/ A& V8 P% A, _9 [
7 s& v. h K# }1 d) n* q* i" c std::vector< NXOpen::Selection::MaskTriple > maskTriple;
z0 X& e1 H* F0 a$ `: o Selection::MaskTriple mask1(UF_face_type,0,0);0 }& {6 ?6 Z; C0 }
maskTriple.push_back(mask1);! F6 t8 r9 H0 A$ X
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();
0 L; r* b& D; G; S$ B8 g5 g ]" X selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);
7 ~" e# }& R5 x2 C; o) r1 j delete selComponentProps;
; V3 G* U# ]; N% Y; }( X6 Q selComponentProps = NULL;
5 C: Z* F" Y/ n2 v0 Z5 ?, V
' c3 ?* B) p+ H2 e; c$ ]2 V. T+ Y |
|