|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
创建实体特征
3 I" o+ v3 J- m" l+ P( Y; X+ Z8 b
8 Q1 `4 T4 z+ F+ \0 i% s+ X& b实体特征主要包括凸台、槽、旋转体、孔、盒体、倒圆、倒角和厚曲面等特征,创建实体特征采用CATIPrtFactory 工厂中的方法,
" i3 C3 H6 Z J, V+ D
1 `2 b7 L& B* H$ O3 M. S; J创建实体特征的方法+ y0 R: I( f7 W5 `4 s$ g2 ?" h9 E; r/ g
凸台 CreatePad
: E* i5 g/ a2 C9 d3 Q0 a( |槽 CreatePocket' ?' P% H6 H7 W
旋转体 CreateRotate3 v6 R# J$ u) M5 u
孔 CreateHole* k6 g. H- G6 `( K# S
盒体 CreateShell
; v) ], v6 Y3 \; E倒圆 CreateFillet
& R2 B- Y+ B2 L$ C; i0 x1 {倒角 CreateChamfer
- D. P: P" [( T4 _6 G5 w厚曲面 CreateThickness
1 P. ? G# s: x) Q1 v3 [3 B% e% Y$ [
; R$ q7 C% m4 {1 v6 p% Z' c现举创建孔的例子如下:/ A( c6 [1 G O4 R5 M& ^; w
1.常用的创建孔的方法包括三种,依次如下。
& d" ?' g% q( N3 A- E8 ^! d8 mpublic virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihSurface,9 C+ [ I0 h6 \, l: X
const CATISpecObject_var ihDirection) = 0
7 F T p, K( ]! y0 X* o参数介绍:ihSurface 指支持孔的平面或曲面;ihDirection 指孔的特征方向,特征方向可用( U- [- I4 C) O* P
CATIGSMFactory 中的CreateDirection 创建,孔方向若为NULL_var,则按照曲面的法向创建孔。
8 D& ^: f; F1 z2 ?* v) ] n5 m5 Lpublic virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihPoint,) M( D" p7 s0 [( J6 `% V
const CATISpecObject_var ihSurface,& ]! f1 u0 V7 `* F+ {. ^
const CATISpecObject_var ihDirection,. s, m2 ^$ M- ?5 y
const int IsPointOnSurface) = 0- F9 f- g. C& l8 |
参数介绍:ihPoint 指在支持面上的特征点;ihSurface 指支持孔的平面或曲面;ihDirection
' X7 c5 G B$ z! d! j# y指孔的特征方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如
) G# X- [0 p# d果为0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。; j9 `, E( W X/ I x3 x
public virtual CATISpecObject_var CreateHole( const CATMathPoint iMathPoint,
; d- V+ @0 I% O! `+ e2 kconst CATISpecObject_var ihSurface,* T5 v: m: P* g k! U! s' U! _6 J
const CATISpecObject_var ihDirection,/ B# a* G2 a5 J2 m3 H
const int IsPointOnSurface) = 0
! t# z: b3 Y- q9 N) a: R. Q+ O参数介绍:iMathPoin 指在支持面上的数学点;ihSurface 指支持孔的平面或曲面;ihDirection
+ z. ~1 P# N9 l: R指孔的方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如果为/ G |* H, ^! k& \* n) b4 C J) `: o
0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。
% M" D$ l) P/ q7 C' F7 E: T2.设置孔的参数- x# s2 ^3 k7 ?0 X! `3 a
CATISpecObject_var spHole = spPrtFactory-> CreateHole();
# l6 ]" f# I6 n7 m3 e* W* gCATINewHole_var spNewHole= spHole;
1 e, o2 s3 C4 F! y! j' N1 vspNewHole-> SetHoleType(1);//设置孔类型为简单孔* K) ?7 [. j% S3 X! z) o* [
spNewHole->SetBottomType(1) ;//设置孔底面类型为平底$ y2 P) s; l4 X
spNewHole->SetDiameter(5)//设置直径- e- X2 Z4 `" a# K
spNewHole->SetLimit(1)//设置为盲孔/ m9 T% h8 e! [3 y" g" h
CATIHoleLimit_var spHoleLimit = spHole;) n4 A( k2 V4 c5 b/ b, j
spHoleLimit ->SetOffset(5);//设置孔的深度5 W3 _2 e2 U. D
3.将孔添加在结构树中
/ E, B+ o2 C- C$ d2 |7 P& y7 P/ R$ f( W3 u' \
spHole ->Update();
& B6 N. G! ]8 n6 {8 S$ KCATIGSMProceduralView_var ispProcView = spHole;/ Q, n- [) Y3 e. F% E
if (NULL_var != ispProcView ) {HResult rc = ispProcView ->InsertInProceduralView();}
% `+ G4 Y5 E- v2 W5 V3 c. c: C/ C2 l7 E+ y( v
|
|