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

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

  [复制链接]

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

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

admin 楼主

2018-2-22 13:20:34

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

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

x
创建实体特征
+ \3 }+ v& R7 p% a* r& m  K6 Z8 E( j2 D6 a& M6 D: {2 `
实体特征主要包括凸台、槽、旋转体、孔、盒体、倒圆、倒角和厚曲面等特征,创建实体特征采用CATIPrtFactory 工厂中的方法,$ V# V4 r7 z, i$ T

  N+ f4 j5 N3 O; @创建实体特征的方法
* g/ x- |: M" z+ |* r2 O凸台 CreatePad' Q4 Y7 ]( ], F; L0 ~4 p
槽 CreatePocket
( Y; M; {1 A3 H# Q旋转体 CreateRotate
! @6 ~4 o7 P* C1 P. S8 H孔 CreateHole
% H4 G" d" R9 l% ?5 m5 |  a盒体 CreateShell  w* O% E- I8 {8 r
倒圆 CreateFillet
7 ]) N1 G- d: p( P倒角 CreateChamfer
( X5 [* @# t. p% _厚曲面 CreateThickness) s2 c& K# J+ v1 u
" d' O) c8 z5 C
) t* _! W  o* |) j9 _* M
现举创建孔的例子如下:4 p1 W, H  a% e' e
1.常用的创建孔的方法包括三种,依次如下。+ r0 M8 o  g! o" p, `5 D+ Z0 C9 C
public virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihSurface,& t+ A, |0 f" h, w
const CATISpecObject_var ihDirection) = 0
7 s) t. u5 N8 U$ m$ X1 A参数介绍:ihSurface 指支持孔的平面或曲面;ihDirection 指孔的特征方向,特征方向可用( \; c' {1 e6 Q, A+ ?& b$ O) z
CATIGSMFactory 中的CreateDirection 创建,孔方向若为NULL_var,则按照曲面的法向创建孔。
. U' m) R) x/ G- S8 {/ Epublic virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihPoint,
9 M+ x3 ?& Z: x' Rconst CATISpecObject_var ihSurface,, `, c+ C9 p3 _& i, ]! X8 _
const CATISpecObject_var ihDirection,
. E3 W( u" R8 ~/ z; x7 x- N* Econst int IsPointOnSurface) = 0# u) k* x- Y, m" H
参数介绍:ihPoint 指在支持面上的特征点;ihSurface 指支持孔的平面或曲面;ihDirection
1 H% ]  d! p% Q. q# }- ~* P& q2 A指孔的特征方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如
9 _% C  y9 l- ^) W7 C+ ~" j果为0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。
. R5 ~, C6 X1 e( ]& m* ^* Y  @, wpublic virtual CATISpecObject_var CreateHole( const CATMathPoint iMathPoint,
% f& W# O6 b. i8 l" ~const CATISpecObject_var ihSurface,3 ]! r% P4 j  B' R
const CATISpecObject_var ihDirection,: ^# u+ k2 @) r) o; J4 o
const int IsPointOnSurface) = 0
  d$ `' C5 w$ b4 W2 S: w参数介绍:iMathPoin 指在支持面上的数学点;ihSurface 指支持孔的平面或曲面;ihDirection8 c3 y  S/ P/ K$ |; j- |; ^
指孔的方向,孔方向若为NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如果为
' \3 D- T# \& h+ z4 ^" c0 ~0,说明ihPoint 不在ihSurface 上,若为0,则说明ihPoint 在ihSurface 上。  u9 S9 U: `  G% n+ a- g
2.设置孔的参数
* F, i: K# N3 L, z5 f( c/ }! LCATISpecObject_var spHole = spPrtFactory-> CreateHole();, I5 ~; K! n: _9 ^/ _: R
CATINewHole_var spNewHole= spHole;$ m) r) S9 R$ j; n
spNewHole-> SetHoleType(1);//设置孔类型为简单孔
0 m) [5 H# i5 A$ _8 t3 D  b; SspNewHole->SetBottomType(1) ;//设置孔底面类型为平底
7 [5 o% s" V5 @0 |+ W7 I  O' x5 fspNewHole->SetDiameter(5)//设置直径
% z; v5 E; g; a- q* ]" Y6 M' LspNewHole->SetLimit(1)//设置为盲孔
' t' [) {# a1 G3 Z: }3 p/ W! NCATIHoleLimit_var spHoleLimit = spHole;% M5 z/ q- L( x, x
spHoleLimit ->SetOffset(5);//设置孔的深度" ~5 A7 @; Q# g5 S$ y8 Z2 c4 w. m
3.将孔添加在结构树中
' K8 T( W+ a$ c0 r: Y
0 _% o& Q$ h5 a& s+ DspHole ->Update();
6 @  n1 N$ G- @" ^CATIGSMProceduralView_var ispProcView = spHole;
( u5 r% E" a! O; B# k" u. tif (NULL_var != ispProcView ) {HResult rc = ispProcView ->InsertInProceduralView();}
2 c, h5 Q/ D# M9 K. J' H3 b
" c4 g. W( M0 ~( |
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了