|
01、选择对象2 ]; i7 V$ E% i( P6 ]
2 l8 V5 B6 f9 e1 z* [7 B捕捉
" s0 q6 S L3 q+ L: U* a: b9 {( V7 D PointOverlay 是否显示捕捉点# d ~( B' H5 k; E
SmartUpdateOption 智能更新选项
2 F; Q/ ^" v: \! j Within Modeling 在建模4 `, J' r1 o; L6 I
After Modeling 建模后
: y- f) ]- p4 y! U+ k After Parent Body 实体父后
" O. ^$ h3 J( o# | Mixed 混合8 q0 p9 T" _4 T; r5 s) n& g
0 L8 Q) b+ K/ ]# s9 D/ k( n8 e SnapPointTypesEnabled 设置捕捉点类型的可见性
$ r: T% ]8 N0 F/ e, M& ~ SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用+ _$ b0 g! P' X3 }1 S6 O
2 z& ?. L2 S# _+ ?9 i+ x. O, |2 C& r常规( d m" _5 m8 c! i6 V) f
BlockID 控件id0 p3 R% V" K6 L7 l7 @
Enable 是否可选/禁用控件+ K' b, C6 o9 l1 {3 H6 p
Group 组/ B$ ~* n& M( f/ j9 S+ T8 ]
Show 是否可见
9 U. U: s/ h0 p& q$ ~, u6 n }# K1 \% a% f3 e2 u* r
其它
* H0 N! W% Z3 Q4 N2 s4 J- n 附着 u9 i) e' A( } q* N) i
Bottom 底! z/ A/ Y L, @/ L, t& t, u9 F
Left 左
& b$ x2 f' Z- I: z2 E1 F Right 右
+ Z$ B j6 Q5 l( L. T Top 顶; Z. i' n# O7 w7 |
( L3 l: ^/ m- d/ V
特定于块
' z- e$ \& n! } AutomaticProgression 选择后焦点是否自动跳到下一个控件! P3 {* G8 A$ B0 S0 x! b
BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
Z; C2 v6 J, k/ E; V BalloonTooltipLayout 动态提示布局
' g# ]; |6 \& B BalloonTooltipText 动态提示文本内容$ w5 Q' h( `% ^( d; g. J0 e
Bitmap 指定图片9 c, M, ^4 A5 [0 z! Q3 w
BlendVirtualCurveOverlay 是否显示虚拟交线! Y; j! l5 `. p5 H. Y0 K X! c
CreateInterpartLink 是否显示部件间连接图标在选择条上
7 ^) J/ `# ^+ }' }6 i' n Cue 提示) S* y1 `4 t* @* j! M
, i* x; O4 U% @ InterpartSelection 部件间选择设置
8 F* Y+ q, B: }1 n Simple 简单
1 `; K9 {2 o* C Non-associative Interpart Copy Only 只复制部件间非关联
Z( V) g( D7 b g Associative and Non-associative Interpart Copy 复制部件间关联和非关联
' G; J; E$ ~, _( E) H3 n4 ~ Associative Interpart Copy 复制部件间关联
+ s2 ~* F1 K3 Z" N* r- x
) M1 X& l) g S O2 ^# X LabelString 标签标题7 H7 @: v7 S9 }% K
MaximumScops 设置选择范围
8 I/ @0 J! Z8 s, p' ? Entire Assembly 所有组件/装配- J6 G& L% o' t5 H9 F5 R) L
Within Work Part Only 只是工作部件
7 e3 F( C) g& G; q( x0 n* g Within Work Part and Components 工作部件和组件/装配)
- I8 M( G ?5 ?% \. R6 W8 g r# x
( `$ N( n2 e7 m. q' n4 W4 U1 [ SelectMode 设置单选/多选 $ H5 S/ z$ t& r9 }
Single 单选
7 p- @4 s# {& O& R( ^$ E Multiple 多选
- i. w! E! E, M) a/ z& c& w. u4 n) x
) R1 r* R; {+ _8 j StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)) N$ k6 C1 S# d6 [; u/ y3 i* y' `
Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)% F! y) X' ^" A' _: o6 ]) R
# k) f- H$ X1 ]3 l' S$ Z————————————————————————————————————————————
9 Z& O1 C3 x* u5 U; m9 `/ i! X: i, C————————————————————————————————————————————
3 R- J* c. O2 e咧子:获得selection0控件选择的对象, f n) t5 B' f; v4 N
UF_initialize();
4 V6 Y5 ]) h7 Z, T: I std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
' L, r, L! s* E0 P4 G" m4 u for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数
0 g. F2 X/ L5 K" D) C+ c6 m8 l! j# a { , G) A$ H; @" Q; \" @% w1 ~
UF_OBJ_set_color(objects[i]->Tag(),1);3 u' G1 T/ N- E, K4 y t( {
}
& M( E- { P4 y! O5 o& X UF_terminate();! J) i. F/ a7 |6 n1 c
! U1 k" ]( w) y( Z I————————————————————————————————————————————
. b5 _) i' j. B8 w$ a# j咧子:对象加入到selection0选择控件的对象列表# U, z! W- a' o) A: b
2 V: _4 `1 v$ x6 W3 ?% n& K tag_t obj=NULL_TAG;. T% j/ O+ Q! _: _! q* ^
double point[3]={0,0,10};3 d$ V) i1 x, u( L$ Y/ Y
double XYZ[3]={60,50,80};# ^! h8 p: O. E/ Q( H6 @3 f
char C[132]="";
5 l G' ?# I* i& A9 e/ ] char K[132]="";* B+ O# {$ g. k6 G
char G[132]="";3 ~! Y8 g& x$ v8 r; |0 h! {
sprintf(C, "%f",XYZ[0]);6 S- z) p( e6 |3 h8 e$ j6 ?( `
sprintf(K, "%f",XYZ[1]);
7 G2 x e' J W+ O: ~4 H3 X4 e. g sprintf(G, "%f",XYZ[2]); 7 s4 ^# b: u5 [6 j1 z% e
char * edge_len[3]={C,K,G};
6 Z8 x4 z' Y/ s: ^6 z$ P UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方: Q9 ^% R2 `- ~
UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体9 d: T% i A" a' q1 Z) {0 ~' ^
; G$ I$ a8 c) h
Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen+ y7 l* i; z( D' b* B' A8 ^' f3 G
std::vector<TaggedObject*>objects;
* `1 i1 _ y" ^+ f6 U objects.push_back(body1); //对象加入到selection0选择控件的对象列表) o8 ]& Q/ F. h: W( x: K
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
) P! ?: R. T. Q* L1 `————————————————————————————————————————————9 w3 Q' }8 Q* \! e% ]5 ?. E5 e$ v. u
9 O# h' s& ^ O0 B2 m' f" w: z//清除对象& D. d1 }* ^/ }6 f! q$ h Q& ^3 r
std::vector<TaggedObject*>objects;
# H5 g# _+ g4 F' k2 W% aobjects.empty();- Q# R2 D, G5 J5 I2 z' j& R. }
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);) M! X6 X" \: E, u. f5 z
( b1 ?# @2 S& o) h$ W$ t+ s————————————————————————————————————————————. x; ~2 w0 N' U9 \, ?; j
咧子:只选择面
' U* e; s( a) y5 i. Y3 v( x initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤# [, A8 b1 g: b' c+ m. d7 H
# M# q$ t4 i* A6 N6 C selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
" p `; _/ o1 J0 p9 K7 }6 o8 ~( G }+ B8 D. h) o+ T& Y# t; i
//对象选择过滤 只能选表面
( y; s7 K4 T& L: \( a selection0->GetProperties()->SetString("LabelString","选择表面");2 R; F2 m" K+ g# t
std::vector< NXOpen::Selection::MaskTriple > maskTriple;
1 X% d i* ^! k/ d" N0 S Selection::MaskTriple mask1(UF_face_type,0,0);4 x) C, P: o; `- q( x c
maskTriple.push_back(mask1);
4 I( Z& T! _7 @: l; u/ W5 w selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);
) \0 ^) e6 p$ O/ u( Y4 z7 \% l* M. Q" z: [% X
: s' Y) N6 s8 C1 j" F咧子:只选择面 【UG本身过滤器跟着变】
( U" t) b3 C7 w6 E& Y1 g0 a0 Q initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
5 [8 f0 d/ `. |2 r& O6 M; D
& W) q& v/ Z7 c# |, i, R selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式7 A6 [$ [) M5 j$ {# [) S' J% A( X8 O
4 f3 r1 G. R* O& j$ t/ p
std::vector< NXOpen::Selection::MaskTriple > maskTriple;- D0 z7 U5 g# _. x. j ]; _% o* {6 T+ A/ Y
Selection::MaskTriple mask1(UF_face_type,0,0);( p+ F! w) p( a6 l; G
maskTriple.push_back(mask1);+ Y- [$ H* J# b1 V1 \
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();( {1 |7 g" h7 c1 L9 A4 N1 g
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);- H8 d% v7 B% R8 Q$ ^: y+ ^
delete selComponentProps;2 e1 F: j! n/ M
selComponentProps = NULL;
2 a/ n5 q/ i1 |" N$ M* @ X+ [1 S0 W% D1 }9 M) a; ?9 F j: T
|
|