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

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

[复制链接]

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

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

admin 楼主

2018-5-5 08:16:03

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

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

x
1 a4 W8 k% e, `* o8 n! I2 e
) m! ?5 E) k; o2 S8 n
7 ]  }7 b6 x- D7 M2 U
提示:要关联的Doc必须是当前Doc+ D2 u9 I5 }4 S% O
CATFrmEditor *pCurrFrmEditor = GetEditor(); ( L4 u" E6 f' K/ A/ }6 T
CATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject();
! Y& v9 G4 C1 C9 S; ~CATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement(); # ]' q2 n) h/ {) I7 A0 y$ T/ P# r
CATILinkableObject_var spLink(pCurrElemBase); ! B8 E  T/ H* C3 X

8 @  b, k$ [: R. i' [0 e" U; ?0 e
( V- g* V2 V& q; G6 [1。首先要生成一个新的Drawing, 在interactive mode的话,
! z1 O3 Q7 Z+ h; B- Q! J从session QI 得到一个CATIIniInteractiveSession, 7 I/ y' ]% N. Q2 H
用CATIIniInteractiveSession::New("Drawing", opMyEditor)
; N% ]. @7 C1 @来生成一个新Drawing。(baTCh的话用CATDocumentServices) 6 L6 H( l- ]- F3 E

$ h* B6 s% h8 M' d- _. }) t, y8 u2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,( k8 F  n5 g8 J& P+ R' w+ }+ L
用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing,
) N6 x) O( x, w+ C6 _( ?1 o- ?CATIDrawing QI CATIDftDrawingFormats,' _; d6 x6 A% K% I- b+ U- U
CATIDftDrawingFormats::GetAvailableFormats()- I+ N( w" x$ u# C8 w, S! {  q5 d
得到可用的Format先放着,以后从这里面取一个自己想用的设置上去 ; D' E1 K7 U6 i; K
; q( z& ?# H5 P0 P, l
3。从3D生成Drawing要用到CATIDftViewMakeUp。
( F5 e5 Z9 t' _% h先从Container QI CATIDrwFactory,
, y- j  S) p" `( T# D* s用CATIDrwFactory::CreateViewWithMakeUp()* g+ G) e" m( R( q4 ^+ A7 N2 A: e
生成一个CATIDftViewMakeUp。 8 X% `+ d' {5 Y+ {
4 F# b, S4 A9 ^0 T+ T! |
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,0 H* t4 B6 j, d4 x5 U+ i- |! F
这是才能用CATIView::SetDoc()把3D的Part的linkableObject设' n, o  M6 E. D4 h# }% B
上去,还要用CATIView::SetViewType(FrontView)来指定前视图。 & n' x+ h/ d  S8 K

( g/ O4 e$ }2 v( b5。还没完,从3D生成2D视图需要指定一个投影平面,, M* o( n9 L6 O- o/ r0 L- a% |5 Y
由CATIView QI 一个CATIGenerSpec,
! o) ?1 o, o( k$ |用CATIGenerSpec::SetProjPlane()设定。
2 f3 L, k9 n- f* b- }: v. Z( ?7 T$ r! Z5 K7 w$ o6 ?
6。最后,对Drawing的Sheet设定Format(前面得到的),
, n- j" F+ [! g) q3 B5 V2 A% E指定CATIDftViewMakeUp在Sheet中的位置) k) o: \& V1 ?( x) E4 _
(CATIDftViewMakeUp::SetPosition), 再最后,: f4 t3 z3 E: y; h
把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView) 0 b- _& v1 _) N7 a! w
, ^2 x, E" X3 v& M
7。嗯,别忘了还要Save文件。4 n! i0 z% Z3 F

+ f* T; q7 F4 }, L4 n2 o
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了