|
|
01、选择对象- W6 D# m! q/ L# B! K5 b) ]% F1 F
4 o- n: S/ N* G# {8 K" ~捕捉
6 T7 z/ v) K" r) D+ q& ?* I PointOverlay 是否显示捕捉点# n2 z5 i: P' k6 L( q2 f M
SmartUpdateOption 智能更新选项# U8 {2 g$ i* r' c8 W' L
Within Modeling 在建模( \0 i2 ?3 a% ~' y3 l9 ?
After Modeling 建模后: j% C& J# j! b% Z, f
After Parent Body 实体父后
" g: j1 p" w! W0 [: H8 h- B$ r Mixed 混合- x1 N5 y5 A, w5 Y; X9 |& q3 O
% P9 Q9 v1 K1 R r% |
SnapPointTypesEnabled 设置捕捉点类型的可见性* k, b5 }! S, K! s+ j# N
SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用
5 u1 N, [6 W/ m& O, O k9 D$ l3 Y
7 e- l" ~, a5 f" n0 v \/ q常规+ ?5 E7 h# G; G/ L7 l
BlockID 控件id( D# G2 i# P u' i; P; P
Enable 是否可选/禁用控件! Y; @, i8 m1 E7 X) T
Group 组1 B/ p: d ^' u4 [8 R' Y
Show 是否可见 t/ r. p" K, T: e: f x, l: \
( H: w' f7 m& u6 a! [
其它
+ O- Y8 M {/ }- V 附着
! [. ]$ W7 U" J, B6 q% ?5 S Bottom 底
2 T: t, ^! \' M' r Left 左
* r& t+ U/ T% G0 i" O* C% E Right 右( o( N" Q9 Y. M! d4 Y Z/ p1 B( G
Top 顶 ^$ n+ Y+ m# g( \
* F; h: N6 o$ q% K& e: x% g: `特定于块
% x3 U" m4 f+ W- D) C+ h AutomaticProgression 选择后焦点是否自动跳到下一个控件4 V2 D# o. S, C' T
BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
0 w# |4 |" H& l2 P2 Y5 a' [- E BalloonTooltipLayout 动态提示布局4 x0 v! }3 e) r( H3 q' n1 f
BalloonTooltipText 动态提示文本内容
* ]3 n) p' z4 c) K9 M/ S) ~ Bitmap 指定图片/ `# A+ a/ S, |3 @- U
BlendVirtualCurveOverlay 是否显示虚拟交线' M, g( N! T5 y/ j3 k% g! r6 {
CreateInterpartLink 是否显示部件间连接图标在选择条上" P1 P0 P' Q/ b" ]7 {' [
Cue 提示
* F2 P# d8 q+ m9 g; c* a N
' b7 x" ^( L! Y5 @$ `6 c InterpartSelection 部件间选择设置, X6 Y/ q, K( ?$ W6 i& K' D! ~
Simple 简单/ z; Q7 l% k. ]
Non-associative Interpart Copy Only 只复制部件间非关联$ S6 d8 l% {& \$ b% s( r5 G
Associative and Non-associative Interpart Copy 复制部件间关联和非关联9 j- X$ Y0 s. K
Associative Interpart Copy 复制部件间关联
! ^2 u: }0 N. L1 H' Z. c! g) O
3 [! d" ?3 o4 F LabelString 标签标题+ y1 \* a/ _! Q2 L8 u% v: f
MaximumScops 设置选择范围& f' u$ j |7 C6 U- y$ \ Y
Entire Assembly 所有组件/装配
4 a; n r3 H- @7 R, L/ P Within Work Part Only 只是工作部件
% @1 s w& y: V Within Work Part and Components 工作部件和组件/装配). F$ k' p6 ^: R y. X+ [& s: g& ?4 O
9 M6 G* v1 p$ o2 f1 @ Z SelectMode 设置单选/多选
8 h6 N0 P2 a( k. F# h6 d4 o Single 单选& m0 Z; i6 X+ M R" ]) j
Multiple 多选9 {9 i2 r. [- Y7 X7 f( \0 Y
1 \2 n) X: z* o) |# @
StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)# }5 Y/ ]. p. t: @/ l
Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)
- _1 }7 t; U0 P( ]( w' y! E/ ]) I( n6 R! c5 j% t
————————————————————————————————————————————
5 `4 c6 A; B6 p6 `" }————————————————————————————————————————————
; Q4 W% U; y) {0 y4 d+ t咧子:获得selection0控件选择的对象1 W6 Y9 C3 h" x$ o& Z. s- h
UF_initialize(); * f/ H" H- d6 q+ g( p7 u/ ?# I1 B
std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");; a4 o" |0 Y4 M3 r1 j. z ]" ]
for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数
2 G) V3 P4 A, ~7 U% y { / J7 L6 D6 [# i+ {# o+ K/ F, Q" B
UF_OBJ_set_color(objects[i]->Tag(),1);- x8 A* w9 ?5 \. T
}( @7 U) D, @: c% i+ g% Z
UF_terminate();/ C' n7 D6 a9 F7 k! b, v9 I s; v
1 E8 u/ }: G0 o9 w @, s% X————————————————————————————————————————————5 I" r) ~5 l+ |, k! w5 \- C
咧子:对象加入到selection0选择控件的对象列表9 A; t1 i- J+ r% R
0 Y/ c- O+ A6 _; }( e: a tag_t obj=NULL_TAG;2 y i7 X: f2 a# F& k( L
double point[3]={0,0,10};7 C9 G6 B2 ?5 _3 Y/ J& K( b, ?4 m1 _
double XYZ[3]={60,50,80};% R+ a# ^6 z: q, R1 Q( V& N/ P
char C[132]="";2 z- ?) F/ m4 X: o
char K[132]="";
3 N5 |2 e3 c- Y. Z) e l. l char G[132]="";8 J/ p$ d- x. g- Y
sprintf(C, "%f",XYZ[0]);
" B2 }/ E: X( z) j, P3 w3 {& J- Q sprintf(K, "%f",XYZ[1]);
4 o4 x! W' s/ @+ v sprintf(G, "%f",XYZ[2]); 8 J- @, p5 t# Q( c) x
char * edge_len[3]={C,K,G};, w3 W. _* R6 T/ b8 O/ {4 m
UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方0 H. V: t8 ^3 }8 l
UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体. d) `6 Y9 s( _
7 @1 s9 s( U: ?# [ Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen. o+ `7 e9 ^7 |. d( X
std::vector<TaggedObject*>objects;! @' _5 s3 c) O: L
objects.push_back(body1); //对象加入到selection0选择控件的对象列表- S- l7 u8 H9 ~$ U
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);2 R9 \% J/ [. ]' }' b, O7 g
————————————————————————————————————————————
Z/ x P+ y& [' [4 @( D
0 U3 L. K& O4 w x2 c//清除对象( ~8 f9 Y0 k5 _, i
std::vector<TaggedObject*>objects;" D# p- w: H. W+ R R/ w
objects.empty();
! R# a* V2 t* p* ^ y4 sselection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);+ z7 v8 k, a9 ^" l# Z
0 _0 k) X U* V: B+ z
————————————————————————————————————————————- c. x' I0 m a1 J
咧子:只选择面
. D( N2 p5 w* D# o; r l initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤$ @' s1 B( { [2 W* _( u
6 i# ~' ~! f" ~# x3 l! k% w+ z
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式- Y# N- T' D/ w, c1 p/ Z3 y1 |, n4 _ s
1 u* Y: s$ C+ c2 o: \, k //对象选择过滤 只能选表面
. E6 c4 X$ ~2 P \# a7 |6 z. g0 }% @ selection0->GetProperties()->SetString("LabelString","选择表面");
' m7 i$ P5 ]6 N9 g5 g+ W9 N+ N* O std::vector< NXOpen::Selection::MaskTriple > maskTriple;2 V( h7 u, i y: d, I+ J6 u+ R
Selection::MaskTriple mask1(UF_face_type,0,0);
/ Q2 c9 d* I4 R; O- }: Y8 f& p/ y/ } maskTriple.push_back(mask1);2 [% N. Y+ ~4 t; c h5 t8 D: n
selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);2 f- L) |$ I& y" k2 a+ V% x
3 d$ S" r! r4 H
4 D+ F _; M% u0 _咧子:只选择面 【UG本身过滤器跟着变】
/ F. q& ^' T+ Z# r5 { H( e6 b initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
7 R f/ i) z: ?* j2 _3 s
- T* Y t6 }) f+ M selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
# r# q% a5 O1 u9 k9 K. F- I
5 D* q" R; ~4 G4 l. s std::vector< NXOpen::Selection::MaskTriple > maskTriple;
) I6 L7 c9 K- [) u; F) e7 C Selection::MaskTriple mask1(UF_face_type,0,0);
* A* o0 `- ^# K5 h6 n maskTriple.push_back(mask1);9 ?/ {- A, p, @ k( Y# i
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();3 O9 u8 x; ^' f! f8 c
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);. i0 b' |! [& G% k7 R# f
delete selComponentProps;
- M" h! _8 {4 @ selComponentProps = NULL;* M+ w6 c2 v; N) |; o3 o
( }7 @) N K* c$ e1 U6 n, o; l |
|