PLM之家PLMHome-国产软件践行者

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

[复制链接]

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

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

admin 楼主

2018-5-5 08:16:03

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

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

x
& R: L+ Y$ J. ~. c

+ A  b& I$ ~1 ~% Z' w/ w- ?* h& ]3 G/ z9 Y3 I, P: ~! b
提示:要关联的Doc必须是当前Doc
2 G# |( A) m, [0 y' F/ e' u, LCATFrmEditor *pCurrFrmEditor = GetEditor();
7 E4 t  Z3 |$ t# _$ gCATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject();
8 k/ N( o: q) n6 @3 t8 y0 m; `CATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement(); * M4 {; b2 a; m* E) x+ _! m
CATILinkableObject_var spLink(pCurrElemBase);
# j( v# x+ J; v' L
/ ~  q& f, \( w$ r
* s- g( F. S+ o' [5 y6 g/ ^1。首先要生成一个新的Drawing, 在interactive mode的话,
0 v2 i: y: b7 B; G+ t6 T# y从session QI 得到一个CATIIniInteractiveSession, 3 q' J& j! S) |
用CATIIniInteractiveSession::New("Drawing", opMyEditor)
; k0 j% u9 K" s4 c( q( c# {来生成一个新Drawing。(baTCh的话用CATDocumentServices)
( u( G  r% F4 l1 R
- p3 E. ^2 y7 \# \9 n4 j2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,7 m4 M  D4 V' J
用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing,
/ |: [! g! x/ Q+ k7 \% CCATIDrawing QI CATIDftDrawingFormats,
7 J# X  d  U: G; e- m CATIDftDrawingFormats::GetAvailableFormats()
- j5 `& V( d0 ]" s得到可用的Format先放着,以后从这里面取一个自己想用的设置上去
. G& I7 w; Z' t& x" M$ Y+ `+ k$ s, W* o
3。从3D生成Drawing要用到CATIDftViewMakeUp。
  [" U! Q. ^: ?- E% [/ F" m9 \先从Container QI CATIDrwFactory,
- h3 {3 |  N: r2 g4 q用CATIDrwFactory::CreateViewWithMakeUp()$ o' c0 k2 X3 w- L) ]
生成一个CATIDftViewMakeUp。 3 d. Y: W7 p, {6 h& ^& B
1 v' I  e1 j( l+ `: {* J
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,
. u' N  @6 y5 ?5 t6 J* n  t( m这是才能用CATIView::SetDoc()把3D的Part的linkableObject设9 J$ }6 L1 x; V) T6 m/ V. H
上去,还要用CATIView::SetViewType(FrontView)来指定前视图。 & T# B4 I7 Z, z2 [

! [: K) Y% g6 \' x" v, u5。还没完,从3D生成2D视图需要指定一个投影平面," |( O1 g+ c# G8 ]% H
由CATIView QI 一个CATIGenerSpec,; Y6 t+ X! j7 f+ i! h1 M
用CATIGenerSpec::SetProjPlane()设定。 3 f4 n7 b( V1 f7 f# [% J/ i8 u
! X1 b) X) Q# s: s3 r
6。最后,对Drawing的Sheet设定Format(前面得到的),
( p* D" Y  i( v' {/ F3 p+ d指定CATIDftViewMakeUp在Sheet中的位置
: r  |% w. Z/ X- {6 l3 }' ](CATIDftViewMakeUp::SetPosition), 再最后,+ O8 M: t+ R4 M) N
把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView)
2 j  f1 A1 J9 ^, c- H. v( e$ F2 R7 u. Y
7。嗯,别忘了还要Save文件。5 U( D1 p& K2 J, M" E3 J

0 Q& D$ P1 }' g9 W
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了