|
|
发表于 2016-12-12 12:24:21
|
显示全部楼层
01、选择对象4 i# m d$ H% {+ s
# X* M$ s5 @ c3 _
捕捉# k* s _, G" x$ P1 I+ ?2 A
PointOverlay 是否显示捕捉点" q* ?) v8 C2 Y f/ _/ R! ?
SmartUpdateOption 智能更新选项! m3 W7 `" |+ |% `$ h! c$ }3 b
Within Modeling 在建模! @4 f% i' r+ ~: K, S9 a
After Modeling 建模后- w3 ~2 U& \: z/ Z8 @* O0 u8 ^
After Parent Body 实体父后
) l1 @7 e" l8 U7 ~4 o: N( m0 X$ N Mixed 混合
; z1 I5 p; ]7 r
" a2 \2 X- l" |+ ~; r* L, Q5 \ SnapPointTypesEnabled 设置捕捉点类型的可见性3 \) X! c+ I- k: ?
SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用
8 Z$ m: j0 \/ l0 N# ^1 F* F; b# K! l4 F2 j o
常规* \1 }0 o2 Z* S4 X( {0 b' }+ d
BlockID 控件id! I$ I& ^5 B3 z6 n/ h( e
Enable 是否可选/禁用控件+ h+ h) T4 q( J. G8 u
Group 组
" ^3 y' y! }; l2 J E0 f Show 是否可见# U) v: j3 Y# h& T" T: q4 K4 J
D$ P) c, Z1 f9 w. G
其它 ! I+ M* X9 f1 a$ M6 F
附着5 m. _1 R& W( F8 m4 m! C
Bottom 底/ E. q! P/ O, X( Z; L% Z; i
Left 左) a% Z* m- g$ U6 o6 c: Q- L
Right 右
) I, X* F9 B8 J% q* I Top 顶2 `8 ^+ ^# b; h8 K& [! N& e# R2 X! V
3 z/ J- ]& c* W, l+ N7 r5 K3 |& C
特定于块
8 G2 |0 _- h4 Q9 h AutomaticProgression 选择后焦点是否自动跳到下一个控件
7 I$ E) _/ O. j+ F: p* ~ BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
9 E; V6 P8 f* F0 x3 i! O! z BalloonTooltipLayout 动态提示布局* e+ ^+ _. k) h5 N
BalloonTooltipText 动态提示文本内容' i/ O8 m; {- P0 E! ] I0 Z" u
Bitmap 指定图片- y$ G0 {8 Z" D5 E$ `
BlendVirtualCurveOverlay 是否显示虚拟交线
! u' P' w- C$ M! ^9 v( B- l* n CreateInterpartLink 是否显示部件间连接图标在选择条上
. M6 f% J$ \" w; l3 N$ ?: { Cue 提示
; c6 Q$ g L- [+ Y5 k
1 a8 q4 }/ y$ B& k InterpartSelection 部件间选择设置4 o* L" f! h- Q. j0 c5 e
Simple 简单
) S; E$ s B# G @+ y Non-associative Interpart Copy Only 只复制部件间非关联
4 n1 M5 L/ u4 ?" O; j Associative and Non-associative Interpart Copy 复制部件间关联和非关联
: o- y4 b% \# ?/ [+ e Associative Interpart Copy 复制部件间关联
( ~' j1 k5 p7 k
# A' [! t6 ~/ C0 F. m u LabelString 标签标题- q7 B' f! D7 ~/ }. C T: U
MaximumScops 设置选择范围
+ g5 A. |* M5 z& i0 X4 n/ s Entire Assembly 所有组件/装配
: M/ }. z) {5 A8 X# ` Within Work Part Only 只是工作部件/ Q) e8 O9 V" U0 f
Within Work Part and Components 工作部件和组件/装配)
( p& W6 R- S1 x: q8 O; t4 P" C& A+ f3 B/ V
SelectMode 设置单选/多选
7 ~# P% l @2 m Single 单选0 O6 W* c$ @8 U
Multiple 多选+ w+ `6 A2 U1 c
- y. P3 W3 k) \ StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)+ @' N: g: l7 ~3 L
Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)+ J; \, p8 N( E0 P" x
4 t8 J B+ b. o; v4 O9 N
————————————————————————————————————————————5 K6 D. k, m6 C5 n, C" z
————————————————————————————————————————————
& _' s- ~; G$ N咧子:获得selection0控件选择的对象5 e& q- `* D$ l" ^7 n* \
UF_initialize(); & x8 K9 o. e9 {6 o3 {! e
std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
) A* ?2 E$ L: A! s* a for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数
& u" t# B( V$ Y& r9 n1 r# V { ' q- z3 m$ j4 r& Q3 G5 [' b
UF_OBJ_set_color(objects[i]->Tag(),1);- }. s6 O; @5 X+ O/ l2 Y
}
- ^% J" K O2 m1 n UF_terminate();
7 }2 I# \& p! D2 }/ L9 C. E( c
9 t0 n5 Y' d' [————————————————————————————————————————————5 \( Y3 A, |1 N# S/ j
咧子:对象加入到selection0选择控件的对象列表; X, E- E: R5 p1 e9 ?& i* r4 M9 w
' c. A0 j' E0 G- h8 ~7 b
tag_t obj=NULL_TAG;
( H, b o+ B8 W9 S double point[3]={0,0,10};
$ Y$ |7 V7 K) w; ] double XYZ[3]={60,50,80};
# v3 y- Z: G( m: R char C[132]="";# u5 Y$ {- l l$ H7 l, j
char K[132]="";- { X: w% F, q/ w
char G[132]="";! e' `" C. `: k" l
sprintf(C, "%f",XYZ[0]);. {" ]2 x- A! \ O' X# u
sprintf(K, "%f",XYZ[1]);
* ]" T* R. `: `* I, ^3 I sprintf(G, "%f",XYZ[2]);
' r2 Y# k; G6 v- | char * edge_len[3]={C,K,G};3 P1 O$ `, Q+ S( t' T0 ~$ J' M
UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方
4 M D1 C: g0 K UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体
* \# s+ ] ~: b" U$ k8 A' s+ N
' U0 x+ M8 Z' S Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen# R8 y3 w2 J9 ]8 y- C/ ]7 {
std::vector<TaggedObject*>objects;
6 {+ o# S+ ]. T* |5 U% ] objects.push_back(body1); //对象加入到selection0选择控件的对象列表8 o; {# C' y- e- z
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
2 Q- f+ q2 J2 I! ] P8 T* J3 S————————————————————————————————————————————
0 @, ] K: K! O& v3 F1 ?5 A
0 s" }4 I q P$ ?: t9 Q$ `6 W//清除对象3 |* Y* G8 T7 u, K
std::vector<TaggedObject*>objects;
4 K. L s! \' P6 G* gobjects.empty();
# A3 F9 ^+ _- A7 w O: S5 @selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);5 x' D" S5 c2 b: X0 D4 {
! z4 N o6 y0 Q+ S
————————————————————————————————————————————( ]/ ^0 Z9 q6 q* o- e4 H" u
咧子:只选择面
A8 h+ A) ~; S2 ~1 a, A$ r8 `1 M initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤+ P X! d, l, p- S8 Y
) e/ S$ b* ]4 j
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
5 u! E$ t+ h% R/ o- z3 S8 `* y; \( Y. o8 |# B) M4 {
//对象选择过滤 只能选表面3 |0 H) ]1 g) g+ j6 r; [
selection0->GetProperties()->SetString("LabelString","选择表面");1 O* `+ W' O5 o K' e6 K4 }- s
std::vector< NXOpen::Selection::MaskTriple > maskTriple;* K4 O! Z# f1 _& ?
Selection::MaskTriple mask1(UF_face_type,0,0);7 W8 }% {3 i) e- O
maskTriple.push_back(mask1);- y9 c! g" S# r3 u
selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);
( _8 k% b4 H7 Q b! l/ u
8 V8 U6 q* h0 j+ g4 {5 r% D- [0 t0 a5 q$ U: H
咧子:只选择面 【UG本身过滤器跟着变】
; E- e; i. `' z* h4 j/ K1 o7 ~, W initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
! B3 A- U6 K. g! o. m7 a8 S$ M- c9 c
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式1 P/ {% e9 I, F. G
' \ _/ r% l' u+ v
std::vector< NXOpen::Selection::MaskTriple > maskTriple;
$ k1 | d" V/ r! J7 F Selection::MaskTriple mask1(UF_face_type,0,0);" x" W$ Z: W4 y
maskTriple.push_back(mask1);
& f3 r* W, E0 n% l9 n/ F# M: L NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();, j3 x/ I8 f X2 e6 i
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);
; x& A8 G4 m. D/ D6 K% {' z" v$ Z0 y5 V delete selComponentProps;. x* U# h6 Q, v5 S& h
selComponentProps = NULL;
3 z0 b- x, G: P7 a* Y
' i% ] J, x$ P% k ?: f+ ?8 C |
|