PLM之家PLMHome-工业软件践行者

Catia CAA二次开发源码分享:3D 投影到制图步骤

[复制链接]

2018-5-5 08:16:03 3903 0

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82166
QQ
发表于 2018-5-5 08:16:03 | 显示全部楼层 |阅读模式

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

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

x

9 \6 Y6 a2 ~% u0 h' S& A6 @/ j
7 q, G5 J; t) }  }4 S# @
. {& w4 f0 R- N1 }# y提示:要关联的Doc必须是当前Doc( W0 ~2 J& t5 j- ^
CATFrmEditor *pCurrFrmEditor = GetEditor();
- B1 G4 [! D' I" u$ eCATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject();
' J/ ~# O$ O+ Z4 G$ r) j; C: N2 J7 gCATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement(); ! m  v- s  ^# b! G' ?
CATILinkableObject_var spLink(pCurrElemBase); ; [* B$ E/ k0 b' b4 O) ~
/ [# C% C% ~. y. L5 O: N

' F$ a- u) u7 \- I, y1。首先要生成一个新的Drawing, 在interactive mode的话,
9 g) u7 f- b# v  l从session QI 得到一个CATIIniInteractiveSession,
* X' P+ z7 ^8 S; i7 G用CATIIniInteractiveSession::New("Drawing", opMyEditor)! _, j+ g2 W4 U
来生成一个新Drawing。(baTCh的话用CATDocumentServices) 3 U$ L# ]# O$ V5 |- O
: D1 l  H+ M6 |# G) f  i7 U
2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices," ^& ^/ `  B% [& U) {2 L" X( S4 `0 u
用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing,
9 W7 ?& |( A+ y& K# ^/ ?CATIDrawing QI CATIDftDrawingFormats,& }$ p- d; Z2 A
CATIDftDrawingFormats::GetAvailableFormats()
. e; B5 C0 e* {得到可用的Format先放着,以后从这里面取一个自己想用的设置上去 : x/ B6 Y6 b, X( O/ \) t

7 E4 C0 V- U/ T3。从3D生成Drawing要用到CATIDftViewMakeUp。
5 P2 h! F6 g/ h# V3 Z; `先从Container QI CATIDrwFactory, 4 n- j8 |+ e" E, p' e1 A3 S
用CATIDrwFactory::CreateViewWithMakeUp()
1 u5 w8 {$ e# `1 C. a4 i4 l0 s1 w生成一个CATIDftViewMakeUp。 * }# v5 F. j$ i" Y9 y, @
7 G! P) m* w# P+ X6 x1 v
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,3 r$ @! ?# o# `1 k: G
这是才能用CATIView::SetDoc()把3D的Part的linkableObject设
, V3 \" i8 o/ Y( m上去,还要用CATIView::SetViewType(FrontView)来指定前视图。 & m" R, ^3 D7 T) g' r5 l

6 {7 e. V1 o) w, f: y2 I* i5。还没完,从3D生成2D视图需要指定一个投影平面,( t. ~2 F9 k2 I5 U' Z% r
由CATIView QI 一个CATIGenerSpec,0 g4 `) Z  |5 O( F6 _* X% c
用CATIGenerSpec::SetProjPlane()设定。 2 ~8 g! e: }7 `" V$ y

4 x. U. Q! e: z+ ~8 C. C6。最后,对Drawing的Sheet设定Format(前面得到的),
! u$ r# [* v* H1 Z) C指定CATIDftViewMakeUp在Sheet中的位置" a9 _# X8 _& }$ H, {! f
(CATIDftViewMakeUp::SetPosition), 再最后,
' c( c; k+ ^8 O# v1 h/ {把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView) ( e6 |/ x6 ?" D" I) Q$ a: u
7 r* S* ?$ C  d
7。嗯,别忘了还要Save文件。: y8 l/ ?1 a+ F! u
7 t& v  `0 F- X/ N
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了