|
01、选择对象9 ^* G0 Q% K" r7 _1 C* c" o
7 f$ u& D z5 ^ c* ^& u捕捉
, L& a* k) r) L PointOverlay 是否显示捕捉点
+ z6 Z+ b2 H/ [- L: z$ n SmartUpdateOption 智能更新选项
( |/ o3 W8 q% T; u* ?$ E Within Modeling 在建模4 K- J" o, T' a# P0 {6 ~
After Modeling 建模后
& a0 j. d6 W: r3 @; ?. | After Parent Body 实体父后2 u0 P0 F, M' p
Mixed 混合
8 F1 Q/ Z/ a! z1 z4 `9 A4 ]$ H" G
1 E# `8 a3 K3 w. A1 l SnapPointTypesEnabled 设置捕捉点类型的可见性
# t+ i) E2 d3 A4 V* I SnapPointTypesOnDefault 设置捕捉点类型相关的内容被启用
0 N2 q$ E" \7 a3 Q0 N) P5 B0 }; y1 [
常规: X5 Q2 |2 o- n D# t* Y5 {& P
BlockID 控件id; q P+ m+ w b- b
Enable 是否可选/禁用控件
; r/ v$ s4 z0 Q! W Group 组
" P, m/ _) U# t" l* m2 P- |9 ^ Show 是否可见2 q+ c4 [' D2 D5 c) Y p& e
# w% Q! R# J7 d& d
其它 Y6 `; Q3 t7 Y$ Q7 z
附着: Z9 G7 ^0 f5 \' Y
Bottom 底
; O& `2 k8 p4 Z* x* b W# N3 h Left 左6 e) _: C) t* Z
Right 右
/ ?: D( G; k! n1 `( [ Top 顶8 X8 p6 [* [# ?( G
' j% N$ B2 _( S/ p: o
特定于块 c* R$ L* m: O5 v6 S- r/ I
AutomaticProgression 选择后焦点是否自动跳到下一个控件& w* ?" f# U4 y- G6 E
BalloonTooltipImage 动态提示图片(鼠标移动到控件是显示图片)
( e: k( C6 t1 L! k. b BalloonTooltipLayout 动态提示布局
( `4 Q: B7 ~6 r& w7 ~ BalloonTooltipText 动态提示文本内容
! S ^+ v; Y' ]" ~7 G Bitmap 指定图片
; [1 L* H4 S+ I8 Y. S1 m3 e BlendVirtualCurveOverlay 是否显示虚拟交线
6 |4 y& j: x' R" A: b% ?' ?% Z CreateInterpartLink 是否显示部件间连接图标在选择条上
* L/ h- b4 T7 q! F Cue 提示& |' W/ l. E4 s
+ p7 ?7 K- U1 g" g0 {: f$ ~
InterpartSelection 部件间选择设置7 S/ H: e3 l0 L8 g* P0 p' J
Simple 简单3 g. {$ O/ F. O# Q. D: \
Non-associative Interpart Copy Only 只复制部件间非关联
6 `# O l6 B! ~6 f& e Associative and Non-associative Interpart Copy 复制部件间关联和非关联$ `- ^) V% v! \! @& }/ P5 T
Associative Interpart Copy 复制部件间关联
7 Z `0 ~. u4 {6 q; d1 d4 r2 U' ]1 ]2 ~* K+ ]1 x5 |' X2 z( o5 B
LabelString 标签标题0 Y% h) j- k$ }) N0 J, |, t, z
MaximumScops 设置选择范围
0 J; a* W1 u4 R* w0 L, }& [) z Entire Assembly 所有组件/装配
2 w% U! l& ]; d \8 b3 Z+ Q/ f. G Within Work Part Only 只是工作部件/ Y) z8 N1 f2 c) B" x d" ]% {$ Z
Within Work Part and Components 工作部件和组件/装配)
) }: t3 }! P' A' v5 ?( u
. s$ x6 c% ?' \7 `' I; E SelectMode 设置单选/多选
2 G* z$ V; i( n+ M Single 单选. q. k: h- Q4 B- @! e# F
Multiple 多选: s7 s& E4 w. A% ^" j p
3 i% f. s: T+ d2 r) [ StepStatus 设置确定和应用按钮什么时候高亮 (Required 必需的时候)(Optional 可选的时候)(Satisfied 满意/满足的时候)
, Q2 [- \9 v) u: Y# P7 j& a Tooltip 动态提示文本标题(Bitmap指定图片时,鼠标移动到图片时提示文字), _2 S% f v/ _8 R) h0 K
2 y, p$ S* K* Q( _& W————————————————————————————————————————————* I1 Z0 @. P3 j3 m% V, W5 V
————————————————————————————————————————————, s4 M1 c2 T4 U1 a s/ T( h
咧子:获得selection0控件选择的对象
! _) ?, k [* A3 _' b UF_initialize(); & O% x& O$ _' y5 N( }+ `3 c) e# D
std::vector<TaggedObject*>objects=this->selection0->GetProperties()->GetTaggedObjectVector("SelectedObjects");& I/ I2 i# I" Z* f- H
for ( int i=0;i<objects.size();i++) // size 列表长度,这里指的是 对象个数7 w. e6 o1 Y; W; w
{ : b5 C& D+ x% v7 v
UF_OBJ_set_color(objects[i]->Tag(),1);
, ~5 b! b$ \) N0 R0 m) r }
! T3 x/ E' i# d7 S: s- ^8 ] UF_terminate();
( C$ y" O' M% ~; u& i
q# |% I) V" a————————————————————————————————————————————
* f" b$ g5 q4 O& H咧子:对象加入到selection0选择控件的对象列表* }; u( \$ M o+ H* M
& w; Q8 {2 U2 H0 [% a1 ^0 i7 P
tag_t obj=NULL_TAG;
$ Q1 O" S" J n c7 Y7 E- _# o) Q* z double point[3]={0,0,10};
2 ~) ?. s+ v/ v double XYZ[3]={60,50,80};! o7 n4 ]! r0 r
char C[132]="";& r3 Y9 R; E& G) L( D. d& w
char K[132]="";
* k; {) ~5 ?1 d* r: u char G[132]="";
; T- i8 x) S. g6 l$ |- g sprintf(C, "%f",XYZ[0]);
5 z5 p0 x! K$ F7 s/ k8 x sprintf(K, "%f",XYZ[1]); ( \) ?% R9 G; h2 E' W% x! J1 P
sprintf(G, "%f",XYZ[2]);
" C; Y5 ]6 c! W# }3 k/ F char * edge_len[3]={C,K,G};
" n9 |* D6 s. }5 Z UF_MODL_create_block1(UF_NULLSIGN,point,edge_len,&obj); //创建方
) G1 p. `( C: } J% F UF_MODL_ask_feat_body (obj,&obj); //从特征中取出实体& X5 _& x; Y$ O4 A
: j7 l) q. }& i% ^) j# s
Body *body1(dynamic_cast<Body *>(NXObjectManager::Get(obj))); //tag转换给nxopen
) g1 S: c! D4 w: l5 \$ o1 k std::vector<TaggedObject*>objects;
/ c: a/ Z: O, V' B objects.push_back(body1); //对象加入到selection0选择控件的对象列表/ t y+ B; f5 a' z6 U
selection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);/ p9 ~: ]1 d& B
————————————————————————————————————————————
3 i4 ~5 v# d, G; j9 h0 s; D' {3 U5 K
//清除对象
4 k7 [% m% Z" @6 \std::vector<TaggedObject*>objects;
( F- \2 R. V j$ N& a3 o7 dobjects.empty();
& {- W! A' M0 Y& o# _) dselection0->GetProperties()->SetTaggedObjectVector("SelectedObjects",objects);
/ g: P: g6 b. s9 w' d+ M6 c6 k7 s
2 o _. G" y! S' o————————————————————————————————————————————: s) v! C8 j. S
咧子:只选择面
' Z) }1 ]9 C0 {( q* M1 q initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤( _ n* M. k# ~
! X- `2 k7 i4 m$ T# |
selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式, N' @' r: R9 A0 b3 W' E d
# D# Q) k' n9 b+ l //对象选择过滤 只能选表面
" ^1 A' ]% @; ~/ H* m& c9 m0 a selection0->GetProperties()->SetString("LabelString","选择表面");
1 ^, ~1 h+ ]. ]2 H% H! r& l std::vector< NXOpen::Selection::MaskTriple > maskTriple;/ C, C& B' ~2 d4 [4 w9 o8 q% D
Selection::MaskTriple mask1(UF_face_type,0,0);1 l! R5 `- o' {& ~+ @8 \
maskTriple.push_back(mask1);
$ F1 h# Z2 s8 ?# ~- C/ E selection0->GetProperties()->SetSelectionFilter("SelectionFilter", Selection::SelectionAction::SelectionActionEnableSpecific ,maskTriple);: {- D) l9 g+ N
+ N/ A3 x3 N$ r# [' Q t5 M0 f: g
( a2 H9 b+ S" x7 ?7 I" s咧子:只选择面 【UG本身过滤器跟着变】
" ~2 t; d! i8 G; [ initialize_cb() 初始化里加代码 或 dialogShown_cb()显示对话框里加代码 可进行对象选择过滤 + A3 r" {# R8 ]2 }" a" K
$ m7 L& g& W. v, l. X* x selection0->GetProperties()->SetEnum("SelectMode",1);//多选模式+ w7 \5 G* T, C- k. d7 R
- Y E1 d0 [5 e$ y7 l" l2 m* r0 e/ B std::vector< NXOpen::Selection::MaskTriple > maskTriple;" {1 d( ?5 }% m) w9 |
Selection::MaskTriple mask1(UF_face_type,0,0);% V' ^' h! b* z) w$ Z+ e
maskTriple.push_back(mask1);- E/ d& E8 B& a. E, Z* Y
NXOpen::BlockStyler: ropertyList *selComponentProps = selection0->GetProperties();# ]0 F* A9 _) G( `- W
selComponentProps->SetSelectionFilter("SelectionFilter",Selection::SelectionActionClearAndEnableSpecific,maskTriple);2 L- [4 {! U! V- L) d
delete selComponentProps;, S/ k6 d; J; s |% e
selComponentProps = NULL;
+ Q8 @8 ]: j3 A h. N) [! E, ]( Z. O. v+ @& S2 F
|
|