|
|
发表于 2016-12-12 12:24:21
|
显示全部楼层
01、选择对象
$ a2 v7 q" r8 U" N; K' I) J% K, z4 J4 h
捕捉+ x& m2 k- U3 V& W; S3 @* F
PointOverlay 是否显示捕捉点
% |% m0 p* {# G' p SmartUpdateOption 智能更新选项
1 F7 v M. ]; ~ J! Y) @: S Within Modeling 在建模
; ^% S% G$ x( i# U1 F) O3 R+ `& } After Modeling 建模后/ F+ P, _. b" ?* n+ r# u- x
After Parent Body 实体父后- A. d% |0 j1 T1 x+ P$ f
Mixed 混合( h% q1 e( c% k- ?* W
) c6 ~* J( g: P5 J! S; s! D
SnapPointTypesEnabled 设置捕捉点类型的可见性
# F' i- u8 q* D# F SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用
2 s( O3 b: C/ t; C2 h& D* H" t) `8 V
常规9 W- [8 d8 K0 L, h
BlockID 控件id
" G7 A* L& ~" t) X% J+ \$ q Enable 是否可选/禁用控件7 J" `1 A& f2 Y/ N% S
Group 组2 V# m" B `% l+ n# x
Show 是否可见+ F/ }* i( u9 @' J
0 z- j& w* {4 D S+ J X* r) X其它
4 ?1 i8 K0 L+ E3 V: F7 ~; d, j 附着* f' y3 c0 @% [2 V5 S. G6 }' T
Bottom 底
# i% u2 ~7 N* Z, m9 m Left 左 V$ N8 y# M1 {" N$ ?
Right 右8 l1 Y+ U4 v. D% D! P, I; b, A
Top 顶( U6 n+ {" g5 }; `. `% V
# z+ a8 A& G6 x
特定于块
% C2 |, @! ~4 J, g+ w' r, P' c AutomaticProgression 选择后焦点是否自动跳到下一个控件
( v* ^% `7 }& g% Q; P3 N BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
1 B1 X7 H& }$ v3 z: U* F, I BalloonTooltipLayout 动态提示布局
6 L2 D- c* B# |, w4 l9 s BalloonTooltipText 动态提示文本内容0 e: W0 _. \& s2 I, c
Bitmap 指定图片- f) u9 u* M: F ]( G4 n i/ y W8 v/ y
BlendVirtualCurveOverlay 是否显示虚拟交线
* ]7 |1 c" o& {5 h- T+ V CreateInterpartLink 是否显示部件间连接图标在选择条上
( j$ L+ R9 p! F& P1 o; Q Cue 提示
0 m0 P r: d; Q2 D' _' A7 r2 m0 ^) N# @& i0 v
InterpartSelection 部件间选择设置/ }5 y1 J, ?. \$ f6 Z) I
Simple 简单 \# z% s& n* L; R3 ]' p
Non-associative Interpart Copy Only 只复制部件间非关联
2 Z6 Q' f& T; x9 R4 ^( ~ Associative and Non-associative Interpart Copy 复制部件间关联和非关联
# @. P" G3 r: A8 v Associative Interpart Copy 复制部件间关联6 }# y$ o$ [/ y" b6 o; l u; t
$ m$ |. }+ U4 ?7 W) ]9 v
LabelString 标签标题# U2 ^3 j: l& W" _+ Y% d
MaximumScops 设置选择范围/ [9 |) I+ E: M. o) V
Entire Assembly 所有组件/装配
8 W( X0 C; \. S7 y. V0 Y7 T3 } Within Work Part Only 只是工作部件
. \& }6 C5 Y! z+ s6 i- b! C) P Within Work Part and Components 工作部件和组件/装配)% Z2 p8 T9 r2 G' F& ^8 S$ L: M, ]
& R$ ^' w4 t$ L& S( A SelectMode 设置单选/多选 " e( l# h+ q* h$ [6 {
Single 单选
6 d1 |- \3 {& s( l/ ^ e, @ Multiple 多选
0 D' b: o6 E) Y) A V5 k% E5 B/ P4 ]4 i- z
StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)
( X! j2 s% ~1 `' P4 c5 \, V$ B Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字)
" Y% X: a' V% ~" R% Z' c
3 R5 p4 f* t- N% ?————————————————————————————————————————————. p& P/ G# b; r, Q U W
————————————————————————————————————————————
: g# @! V- p; ~' A Z咧子:获得selection0控件选择的对象2 x1 c* m5 M9 \- ?$ z7 S s% @
UF_initialize(); ; y2 `0 k2 v3 G. ?' V
std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");
1 D$ @2 X' C6 y( p8 U for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数: m7 J* s2 P$ e0 g
{
: H# A: n) `6 Y, k; w) p+ i UF_OBJ_set_color(objects[i]->Tag(),1);/ @. g* ?$ t, P# s
}" @. V4 d% o% N/ y
UF_terminate();
2 [$ [$ ]+ `* @( `% y) ~6 |8 c4 n* y, E4 v6 J6 w6 f1 P9 D% r
————————————————————————————————————————————8 q4 C) k7 D/ T- A- r: P( K
咧子:对象加入到selection0选择控件的对象列表- o B+ B8 y' ^7 p) l) k9 x
3 y+ q0 m! R5 K% W1 N- T
tag_t obj=NULL_TAG;
. H) j! o- |+ F6 v) {4 ]" D1 t double point[3]={0,0,10};
" k9 a6 b9 C9 T9 A; S double XYZ[3]={60,50,80};
7 o2 ]% b3 x) d# U1 ?' e2 S9 j; { char C[132]="";% g1 C4 s, D3 Y$ V( K
char K[132]="";6 Z& ~, S; s: M7 t: w4 ^
char G[132]=""; j# p; H/ L' U3 f
sprintf(C, "%f",XYZ[0]);7 b' c7 D3 J9 f: I9 N. N
sprintf(K, "%f",XYZ[1]);
+ L( m! I% h' V1 I2 j sprintf(G, "%f",XYZ[2]); * V2 d D5 f' R8 |" B0 I* b% E% a9 u
char * edge_len[3]={C,K,G};
4 A% v( {- E" v5 a" B) ?1 {7 n UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方
1 Z' N1 D i8 e. J2 `& @8 _! k) a) ^ UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体
4 Z" _) x0 p* X9 Y' _- P. L- d9 R6 C! L/ n: K7 y2 r) V T
Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen% U# A# Z' _ V6 e6 f
std::vector<TaggedObject*>objects;( `& o, X* K4 h9 q8 {6 Y
objects.push_back(body1); //对象加入到selection0选择控件的对象列表
6 P3 P# a+ K- L& F/ p selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);& Z# w& P( _1 _ a" l
————————————————————————————————————————————6 Z- i; l5 l# m' N4 \$ t9 [& B8 w
% N; V9 ~" m" K6 z( q" a
//清除对象
" t8 h; i+ X" A2 i0 zstd::vector<TaggedObject*>objects;$ |1 Z% |8 d; o% ]2 c7 S! A
objects.empty();9 e7 {% m, Z1 n$ o! y. l# s
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);' p& h2 X6 J( D' E1 R- F
9 l! u& ]8 E' B/ i' P8 x
————————————————————————————————————————————
E- E2 _0 `. S) i% [咧子:只选择面
g4 \6 S0 ^$ I3 }) {2 [6 N initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤
0 [, j1 m, c4 S2 B! g0 h$ G2 h; S8 O5 {$ |
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式, N$ L) B( u% L
- s0 {* |+ D1 [, ~6 e* O
//对象选择过滤 只能选表面
* J4 U# g& F/ H6 b/ r' Q$ }. Y selection0->GetProperties()->SetString("LabelString","选择表面");
2 T+ {' i& U/ \; s: i: C std::vector< NXOpen::Selection::MaskTriple > maskTriple;
$ J( z) j E) F% k Selection::MaskTriple mask1(UF_face_type,0,0);# e& Q4 Z5 P. P, E% L# }2 Y
maskTriple.push_back(mask1);3 I3 n2 D- {# }
selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);
6 U" C% _% F9 D
( G0 t/ \2 H; l2 H6 N) Z% g( c' a! u) E7 L s
咧子:只选择面 【UG本身过滤器跟着变】0 z0 u8 o3 L. ^# l) q( k1 {' [
initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤 9 h" r! l4 S9 u7 T; \
3 |8 c" Y+ ?# i9 c S selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式
3 L: I- J/ i& ]5 E; o
' R/ T5 `6 ]1 S8 O std::vector< NXOpen::Selection::MaskTriple > maskTriple;$ r. i! y" N7 T F) A# n- z
Selection::MaskTriple mask1(UF_face_type,0,0);
$ i7 Y3 X2 q' \# I0 ] maskTriple.push_back(mask1);* Y6 G. o" }* W
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();' F8 J; v o" t. K$ y
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);
0 q: [, I7 \" L/ ^- ^ delete selComponentProps;
5 L1 s) x- K% p5 C# b selComponentProps = NULL;
6 R7 R/ p+ R! v2 z2 r! m- ?
. {3 `3 Y- b( D) a6 ^! d7 x |
|