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

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

[复制链接]

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

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

admin 楼主

2018-5-5 08:16:03

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

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

x

) ^4 h9 L6 X6 d; ?: J$ O. i
9 t; P! R% s/ ]; L  Z% e5 C" X) [- |7 A  p& C6 ~7 Z
提示:要关联的Doc必须是当前Doc$ V0 ^: N( ^/ G8 F3 x7 l5 q
CATFrmEditor *pCurrFrmEditor = GetEditor(); 2 ]% F0 h; |, _" }
CATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject(); 5 z' S* K3 x2 Z2 J/ f
CATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement();
3 v3 j: L3 r& t2 [0 TCATILinkableObject_var spLink(pCurrElemBase); : T1 O4 X) ~, _4 p
  x# B  v- l2 x; Q1 h

4 q: p% P* ~3 m: P6 T1。首先要生成一个新的Drawing, 在interactive mode的话,
/ |6 F# |, ~5 ?4 j0 u0 ~% u从session QI 得到一个CATIIniInteractiveSession, / D$ M; I8 Z1 m& A9 K+ h- @
用CATIIniInteractiveSession::New("Drawing", opMyEditor)
9 N7 ^+ H0 S0 V5 u来生成一个新Drawing。(baTCh的话用CATDocumentServices) ( [8 W0 `, Z( m; _. ~% I

1 x5 a7 k+ W% P3 A' |& P5 n/ s2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,# V% R6 p9 t, U1 F
用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing,
. h) }  K' O' j8 l3 u5 {4 T& OCATIDrawing QI CATIDftDrawingFormats,
8 y3 O  d5 N$ c CATIDftDrawingFormats::GetAvailableFormats()
: c" q; q3 Q& y, v% k得到可用的Format先放着,以后从这里面取一个自己想用的设置上去
) f( \: L7 q/ B) e
9 i, H2 S' |$ e+ y, ~7 P5 ?3。从3D生成Drawing要用到CATIDftViewMakeUp。7 v% k5 i, M7 p' n4 R: w
先从Container QI CATIDrwFactory, ( j" o$ q+ [6 }1 }' E% ]
用CATIDrwFactory::CreateViewWithMakeUp()0 W# @5 ?; \0 y0 c) Z! O1 C
生成一个CATIDftViewMakeUp。
  h& c% p0 \' S. Q' k/ N) S: I% x9 P$ a1 q0 B7 k4 d+ s$ f" Y
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,& l. O/ t) v5 {
这是才能用CATIView::SetDoc()把3D的Part的linkableObject设! F- M6 X" a7 Z5 a. I% b
上去,还要用CATIView::SetViewType(FrontView)来指定前视图。
" |/ B$ O. Z! Q* f& E' C  S- @, ^# G+ q
5。还没完,从3D生成2D视图需要指定一个投影平面,
% R4 d  u$ I4 q) a  a由CATIView QI 一个CATIGenerSpec,
8 i2 s5 k$ s: I2 B' Y: L0 F用CATIGenerSpec::SetProjPlane()设定。
- L( P3 F0 K# H9 Z% S4 _2 P( {6 b5 ~9 j7 {) q, m
6。最后,对Drawing的Sheet设定Format(前面得到的),
/ @0 W; J: r7 P0 f, }' F& t4 Z. u指定CATIDftViewMakeUp在Sheet中的位置
! ]6 W' B$ a2 q8 \- w5 l(CATIDftViewMakeUp::SetPosition), 再最后,( l4 o) W9 x9 z
把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView)
1 u- c7 f/ m/ b6 d/ A! X) O: ~9 [9 S' f% F
7。嗯,别忘了还要Save文件。
- W6 H- ^7 F$ x0 h) u  H. D, A; K( h" K& X
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了