PLM之家PLMHome-工业软件与AI结合践行者

Catia二次开发源码分享:创建实体特征

  [复制链接]

2018-2-22 13:20:34 3153 0

admin 发表于 2018-2-22 13:20:34 |阅读模式

admin 楼主

2018-2-22 13:20:34

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
创建实体特征
, ^: c7 d: ^4 k7 E6 o$ [0 Q8 `+ _
# H1 r1 l* J: b0 a" [实体特征主要包括凸台、槽、旋转体、孔、盒体、倒圆、倒角和厚曲面等特征,创建实体特征采用CATIPrtFactory 工厂中的方法,
0 i& x4 q# }2 p  o
% \- Y# e% Y- _5 I/ W- F$ x6 F创建实体特征的方法
6 T- n# p3 I# @" v, O0 N  ~8 v凸台 CreatePad5 x. p8 }  l# O! ]- y' {3 W0 l
槽 CreatePocket9 \, `) y. `1 z9 U! c0 W. |' z  k
旋转体 CreateRotate
. P4 }7 U* v/ r4 c& v  H: e( S孔 CreateHole4 O1 y4 I1 }3 W; H% g0 a) z$ S
盒体 CreateShell, y' e8 T3 l3 {6 l) `/ V% o
倒圆 CreateFillet( ~5 k1 I( v2 v5 q* L/ D0 s" W
倒角 CreateChamfer; m: }4 Z% u1 @7 B, ]6 t
厚曲面 CreateThickness
) z6 [3 {* P# @2 i6 h% j- `6 ~! y% {, E% F, D

' a( V/ E, g( t5 Y; K1 U! v  s- q现举创建孔的例子如下:% U- R8 r0 q; K; p: K/ F
1.常用的创建孔的方法包括三种,依次如下。
7 d# |" E! {7 A; J5 Ipublic virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihSurface,
, f5 x3 ^% y" cconst CATISpecObject_var ihDirection) = 0
' a+ M0 \7 j! [! g6 }- w& `  v- S: D参数介绍:ihSurface 指支持孔的平面或曲面;ihDirection 指孔的特征方向,特征方向可用
9 u! ?9 b8 E# N+ D$ ICATIGSMFactory 中的CreateDirection 创建,孔方向若为NULL_var,则按照曲面的法向创建孔。
+ M: f( r! ?* d' ?public virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihPoint,9 ^: \" f! C5 t9 M( q
const CATISpecObject_var ihSurface,
; q% w) g/ l2 A$ fconst CATISpecObject_var ihDirection,' q% B/ }% z" G$ @4 V7 I9 ^
const int IsPointOnSurface) = 0
! n3 n$ ~9 Z3 z0 v参数介绍:ihPoint 指在支持面上的特征点;ihSurface 指支持孔的平面或曲面;ihDirection
$ U7 v6 l# G* m4 M2 ~  [指孔的特征方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如, h8 j1 ]5 g3 W4 Y+ Y2 t' U1 O& h2 j
果为0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。6 D/ w4 X: M& s: D
public virtual CATISpecObject_var CreateHole( const CATMathPoint iMathPoint,
) G! V- B. f# r3 Y) `  kconst CATISpecObject_var ihSurface,
* V' B! [+ P! V) ~% D. ^const CATISpecObject_var ihDirection,
/ a/ W8 m% l7 r1 Wconst int IsPointOnSurface) = 05 l; ~/ N- c* X" V% i1 n
参数介绍:iMathPoin 指在支持面上的数学点;ihSurface 指支持孔的平面或曲面;ihDirection6 q8 Z+ O! Z: N$ C
指孔的方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如果为9 Z3 A$ w% S) j0 J7 G, n* ]
0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。
2 S: K& K/ v& Y7 _' H2.设置孔的参数
. b1 y7 i" G" Q( CCATISpecObject_var spHole = spPrtFactory-> CreateHole();
, ?8 S; G7 j# ^CATINewHole_var spNewHole= spHole;/ R) q* w* |3 u/ Q& c/ t1 G% }
spNewHole-> SetHoleType(1);//设置孔类型为简单孔
+ |) Q% P+ P$ @7 espNewHole->SetBottomType(1) ;//设置孔底面类型为平底
% s. S2 n1 }( W' c' y4 GspNewHole->SetDiameter(5)//设置直径3 i" R: i+ l/ T0 Y1 K
spNewHole->SetLimit(1)//设置为盲孔
, w# K% ^+ r4 I# }# [5 ^CATIHoleLimit_var spHoleLimit = spHole;
* C9 n/ ^/ n9 \" x% w4 {2 tspHoleLimit ->SetOffset(5);//设置孔的深度
2 r7 T8 H- o3 l+ d; I9 g2 n3.将孔添加在结构树中7 U0 K+ S1 ~: h3 C1 G

$ b" r# D8 L' XspHole ->Update();
1 E+ t' B. F  {7 h, B7 `  NCATIGSMProceduralView_var ispProcView = spHole;) o  @7 q- u- Q* [8 e3 \; ]0 Y2 [
if (NULL_var != ispProcView ) {HResult rc = ispProcView ->InsertInProceduralView();}& ^( E  X# m6 y& B9 y- |- k

7 k7 I) D' c& V8 J& J
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了