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

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

[复制链接]

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

admin 发表于 2018-5-5 08:16:03 |阅读模式

admin 楼主

2018-5-5 08:16:03

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

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

x
4 B- t: ~+ K6 s  B

( @: }) L$ j: P; \% C! Z7 H( G6 m4 p4 R8 `  ^
提示:要关联的Doc必须是当前Doc( B- }" C" P0 I0 U; {) d# g
CATFrmEditor *pCurrFrmEditor = GetEditor();
- l/ X' p3 i+ E/ {1 C3 r7 g8 fCATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject();
2 G$ L* T" S9 eCATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement();
; n3 T) k: q2 I  g- qCATILinkableObject_var spLink(pCurrElemBase); - A, W3 c; f3 L
6 b" ~# ~+ P" u3 D
/ H1 m1 ~1 W/ e8 }7 r- @$ X
1。首先要生成一个新的Drawing, 在interactive mode的话,5 |) _, E$ ~+ `. f: a) a
从session QI 得到一个CATIIniInteractiveSession,
- a: s2 C  e+ e7 F- X1 l7 E1 p$ B2 h用CATIIniInteractiveSession::New("Drawing", opMyEditor)
0 a7 d: R; ]; K/ m  X来生成一个新Drawing。(baTCh的话用CATDocumentServices) / h) S. M4 \! Q4 d+ J3 g2 X
2 _8 U3 r- o$ m9 G1 b/ F/ Q
2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,
' l6 M% }4 `( T% j7 a& `  X+ }用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing, ! O( @9 e7 T+ `9 J
CATIDrawing QI CATIDftDrawingFormats,
/ T. f0 C1 r1 H: e CATIDftDrawingFormats::GetAvailableFormats()
* D5 R9 l; [* c9 e+ c# X5 q0 K得到可用的Format先放着,以后从这里面取一个自己想用的设置上去
2 N/ r) A2 C4 e% e; q3 a7 X
' w' n; M; P! x" w5 x3。从3D生成Drawing要用到CATIDftViewMakeUp。# M% d. @7 F( r, A; n# J, D
先从Container QI CATIDrwFactory, ( f1 Z/ F; }  V& G9 X
用CATIDrwFactory::CreateViewWithMakeUp()9 I! v5 c, }6 N0 H8 s* Q" a
生成一个CATIDftViewMakeUp。 ' X; Z/ ~1 Y2 m0 @4 z+ }
; r: l7 d5 i/ s# F# u
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,6 l/ @3 ^3 B' }( }8 G; _
这是才能用CATIView::SetDoc()把3D的Part的linkableObject设
" C' {$ i) v: l上去,还要用CATIView::SetViewType(FrontView)来指定前视图。 0 Z1 t* P8 k3 p6 j/ Z: h6 D/ H

* B2 Q3 B8 [1 C, K5。还没完,从3D生成2D视图需要指定一个投影平面,
4 Q$ O4 I2 v: i" [由CATIView QI 一个CATIGenerSpec,5 @. p% l3 A6 R7 e4 }
用CATIGenerSpec::SetProjPlane()设定。 - }  ?" h9 w; g6 }. o9 w; T

9 }- b( G7 R. E) @4 s8 R$ L2 \0 R6。最后,对Drawing的Sheet设定Format(前面得到的),
: Q: W3 }& u% j7 ]* h8 k( }$ i7 k7 E9 E指定CATIDftViewMakeUp在Sheet中的位置' T: X# w) ^( D5 Z9 U6 ~
(CATIDftViewMakeUp::SetPosition), 再最后,% C; ~1 @% Y8 \4 H
把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView)
( V$ W7 H( @6 ]9 ?  u, U! \  f; h! r6 F  y( r( J* \4 Q2 e
7。嗯,别忘了还要Save文件。$ z( W$ t; I. t3 G

% V" T2 j7 t. i& T6 ~- u
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了