|
|
01、选择对象4 s' t! c7 l, H0 ]( Y, k- r
+ Q3 l$ X6 D3 ~8 u8 z捕捉1 c! o/ }/ y& b/ l2 j
PointOverlay 是否显示捕捉点- ?: V2 x$ Q! ^/ V& B
SmartUpdateOption 智能更新选项
( y1 s3 j% H) H3 ] ~% x9 v Within Modeling 在建模
0 @0 L) g& w1 N After Modeling 建模后
! n6 x9 N& H6 R# J, [ After Parent Body 实体父后
/ U& [. m8 z! ~6 v" ~$ A, Q Mixed 混合* ?9 a8 y. W" ?1 Y7 J% B* f3 ]
* H% I6 S& X2 V! O2 b SnapPointTypesEnabled 设置捕捉点类型的可见性
% r: ?+ ^: a1 @* M% g2 e SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用' K f) E8 j4 {1 R
; E( V8 `. S& `% D: R常规2 r" {* T$ G! F k2 E, V
BlockID 控件id+ J2 a# V( E" i, Q& d0 k
Enable 是否可选/禁用控件& a* I- s( E, ]6 y8 `* S2 e
Group 组
! }$ |7 u* ~: O$ J Show 是否可见
/ w$ |$ X( ]7 |0 n! o) l# t1 [: f s- V
其它
% {: m; j" p9 G. `5 N 附着
' W X# x% [/ a, M4 J Bottom 底
7 J1 M' Z- V" r Z% M4 Q Left 左
. e" x% `/ V. u/ [, d Right 右& l# R# |8 z7 Z* k p
Top 顶
! V2 `6 m( Z7 m2 [) y' C' L- g, P/ f' x, H: ~7 \4 r& E7 X( X
特定于块- J- h- s* L; V
AutomaticProgression 选择后焦点是否自动跳到下一个控件- `$ w. M' _) n" X# r+ o
BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
. y, i' k6 F s& ]6 r" R( G BalloonTooltipLayout 动态提示布局
) z: u" T6 ]: n. u, @6 V; D BalloonTooltipText 动态提示文本内容
/ k, ], b# u0 k Bitmap 指定图片5 e8 L& x! a1 O2 \* u/ ]- n- s( ?' l
BlendVirtualCurveOverlay 是否显示虚拟交线
4 g: r. j7 x7 G/ k2 a0 F" D CreateInterpartLink 是否显示部件间连接图标在选择条上
- \4 x+ T9 @; _" Q Cue 提示& l5 B3 Q# S$ @; A
( T* ?: I4 x( O* b# }0 y
InterpartSelection 部件间选择设置. B0 \, H ] ~9 T- r
Simple 简单. T+ \: D/ s. L# _2 f
Non-associative Interpart Copy Only 只复制部件间非关联
4 e7 c( Q( ^, _ Associative and Non-associative Interpart Copy 复制部件间关联和非关联
9 |5 b6 H. ]- r* k+ t& Y% Q Associative Interpart Copy 复制部件间关联
1 `+ _. e4 b+ g8 N- }
% H$ K: v2 ^2 n1 C0 i LabelString 标签标题" _! j# R# B- T) F7 q4 W3 g' b' |
MaximumScops 设置选择范围+ s% \$ s! n: d# Z1 {. U. F
Entire Assembly 所有组件/装配9 I T2 I# s7 y. _( s
Within Work Part Only 只是工作部件# g) `, k! e n; J8 e) K5 B0 z
Within Work Part and Components 工作部件和组件/装配)& q6 X& S$ M* h+ e/ Y, e w
: t; U% {# r3 |& s# I# ^$ w7 _ SelectMode 设置单选/多选 1 j! G8 x) @. m* a; R8 V
Single 单选
# g8 n9 u" Y9 b- U Multiple 多选
% C& }# c7 }4 H
T+ O3 |" ^( R4 l StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)
; b; R# E, D* W. K9 |; \$ Y( }6 D& M Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)- y8 a0 M2 q. D1 U1 [3 M" g% [8 s8 Y
! X" M$ F4 i: C4 ?4 [& I1 }————————————————————————————————————————————
8 y3 T) H( @3 u9 Z6 h% l: P; v$ k* F————————————————————————————————————————————; M2 [7 `6 [/ m6 I: t
咧子:获得selection0控件选择的对象
& q0 t5 t5 V1 w8 y+ i% s- ?, l UF_initialize(); * R% O; H& R) {9 v6 ^
std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects"); Q" O, r: h% P; a/ U0 D
for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数: B) E# V. R. b! F
{ 2 @9 x$ I8 O# N: E& q$ \, f
UF_OBJ_set_color(objects[i]->Tag(),1);
/ E' n5 k; g% n: ?% l }" ~% a! G0 @! C9 p
UF_terminate();6 t# n& V8 h y
, `- W& x: |" t- ?! C
————————————————————————————————————————————
: A% z" t9 D( L咧子:对象加入到selection0选择控件的对象列表0 |7 k! A- s5 s/ |% n: [$ J
3 X( j7 w5 t. P/ ^ tag_t obj=NULL_TAG;
0 p9 W+ V1 ~0 K2 P8 `- X; e double point[3]={0,0,10};
/ Y8 m) Y7 ]- b( d3 h' u double XYZ[3]={60,50,80};
5 u/ i: X0 X* C" T7 M0 F k* e5 }- V char C[132]="";4 g: d q. C( P0 \; ?
char K[132]="";
" }. \: A' l3 n7 z8 ?+ Q char G[132]="";
( v4 q, T7 N6 y, u0 c sprintf(C, "%f",XYZ[0]);! l# e9 ^/ p1 L2 E% q
sprintf(K, "%f",XYZ[1]);
9 I# M4 k( |" c7 H5 ]# ]; ~ sprintf(G, "%f",XYZ[2]);
. H! j7 u# |2 F0 h4 [+ Z( t S char * edge_len[3]={C,K,G};4 v" A! }8 C3 p1 z: Q2 Q2 |+ s
UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方
# S2 x7 Y, ?, N& l# B UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体
, B }5 F' L. C' l2 m7 r; [ _$ d% I! f# f4 ]
Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen
& y. S" o& v, O+ a# m9 x: H std::vector<TaggedObject*>objects;
+ {: D7 ]3 G; Z2 N: d, r$ n9 { objects.push_back(body1); //对象加入到selection0选择控件的对象列表
3 Q& ]. n: F/ G selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
! n9 I; d# ?$ W$ x1 R————————————————————————————————————————————' o5 |, r' W3 Y; S+ q
* K" C: P1 r, x" B
//清除对象
. ~% a, v6 {+ istd::vector<TaggedObject*>objects;4 ^+ F' D2 s% L/ H* I. A4 s
objects.empty();
4 t; K8 q4 X" g" D. K* D% |' g9 zselection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
2 u8 \. x, _) P \6 K0 C1 @4 s+ u+ f; o
————————————————————————————————————————————
7 b, y# u' W8 q4 E咧子:只选择面6 X& U. X' A' c
initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
% X1 O, @( @8 R, Q
3 ?: l: _# m6 h7 O selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式8 d/ G T- f, f1 i' k, s& F
5 K! t: f# n5 @7 A$ d* C5 S) g
//对象选择过滤 只能选表面
; a% M, J. t+ k! q selection0->GetProperties()->SetString("LabelString","选择表面");
5 w) o2 n7 ^6 n- Y$ M3 b1 M std::vector< NXOpen::Selection::MaskTriple > maskTriple;
4 ~9 u7 V9 l# O9 P$ g/ H1 H Selection::MaskTriple mask1(UF_face_type,0,0);
8 @9 H# l V/ ?( {6 y8 {5 l maskTriple.push_back(mask1);
- a. ]; v2 r8 V0 ?' `0 p7 V/ B selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);6 w+ D1 p8 K1 p% m; O, s
% j9 {9 N3 x; \. {
+ L: f: u, w" o' h( w
咧子:只选择面 【UG本身过滤器跟着变】2 ^. g: E5 }: n ?$ l! T
initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
$ Z% G" m2 Y" K& F/ Y- e! L3 O) W; n9 }1 D. |2 ?
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
7 s" L/ K: J# V. Z, B6 W- E' A6 k% s! y; v: b* g
std::vector< NXOpen::Selection::MaskTriple > maskTriple;
5 R) K: R& M3 [: ~0 X Selection::MaskTriple mask1(UF_face_type,0,0);
1 b8 d9 i$ g2 t9 B/ L" _, i maskTriple.push_back(mask1);8 D7 C5 ], q1 R5 Q* L7 f
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();, S" [9 c, ?+ w( R* x
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);, L6 _6 E/ I. i, E5 ]9 E
delete selComponentProps;# h) N; f3 g2 N4 M
selComponentProps = NULL;
8 c4 P) c3 L- t6 e% M. D0 n% n8 }+ F0 X/ h! }
|
|