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

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

[复制链接]

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

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

admin 楼主

2018-5-5 08:16:03

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

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

x
8 ^& ]4 B" l% q

' Z4 X8 q% T. o2 ]6 }# k- ~, v, a. U7 u0 W& B( t
提示:要关联的Doc必须是当前Doc
( R, o. n& d) r6 UCATFrmEditor *pCurrFrmEditor = GetEditor();
; G( f% y1 x" C  W6 `8 T2 u$ Z2 |CATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject(); " ]" S  }# g& ?" @" r4 M
CATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement();
& W/ ?, n& o5 fCATILinkableObject_var spLink(pCurrElemBase);
. t3 a& a4 k) Z- t- k7 r/ J7 r
3 \& C6 J1 Q% q6 r# h6 Q. M" k  C9 U  H
1。首先要生成一个新的Drawing, 在interactive mode的话,
- b6 o# G3 G) N1 }* f* _% U0 o2 L# Q从session QI 得到一个CATIIniInteractiveSession,
) @# S4 k7 {% {用CATIIniInteractiveSession::New("Drawing", opMyEditor)
$ i4 X3 j" Y' |" r9 ^来生成一个新Drawing。(baTCh的话用CATDocumentServices)
8 \3 j# L5 V8 |- W6 L
5 \- e. Y! ?+ |- `- w+ H' K) n2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,
9 [! G2 n# L7 n+ {3 T用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing,
- X7 r& v' s) B4 x! {! pCATIDrawing QI CATIDftDrawingFormats,
- O2 q+ t; r. B6 [/ a, ]6 r$ O CATIDftDrawingFormats::GetAvailableFormats()" E% z: f) Y# l6 _4 S8 D4 s: Y
得到可用的Format先放着,以后从这里面取一个自己想用的设置上去 7 W: @+ _8 q% X/ H# l

1 W6 J) o5 `2 I" f+ J- h( q! ]3 a& p3。从3D生成Drawing要用到CATIDftViewMakeUp。4 n2 ]" }% I* r
先从Container QI CATIDrwFactory, ' t: X" \! i' R* E6 `
用CATIDrwFactory::CreateViewWithMakeUp()" J6 A' x( O$ G) J& t6 ~
生成一个CATIDftViewMakeUp。 : L5 ~7 V/ g' A$ f* U- m
* @5 D8 I/ y4 l5 y1 P. L& j$ C
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,; X2 W# a: z( h7 I& [
这是才能用CATIView::SetDoc()把3D的Part的linkableObject设5 A( v2 ]4 E7 w& r' C
上去,还要用CATIView::SetViewType(FrontView)来指定前视图。
( `& o  {# O) S8 g1 `- f: \; T
5。还没完,从3D生成2D视图需要指定一个投影平面,1 M8 d* j& A6 u! }/ d" |% S
由CATIView QI 一个CATIGenerSpec,* R  V, ^8 q6 l% B2 c. }4 q
用CATIGenerSpec::SetProjPlane()设定。 5 R  H! Z9 [* d% |" B

+ [3 r9 P1 j  f- W' S6。最后,对Drawing的Sheet设定Format(前面得到的),
5 B- i. [# Q- |# [; s指定CATIDftViewMakeUp在Sheet中的位置
( h' ]# ?8 P6 `(CATIDftViewMakeUp::SetPosition), 再最后,
0 X1 }1 a6 }, I' I把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView)
( J0 L( R, N2 `0 n, L/ Z- o+ v
0 J- c1 s2 k& t6 |' S7。嗯,别忘了还要Save文件。
1 U- `) z% ^& B5 l. q4 p! z, o9 A' f* B6 H5 m: |6 ^; 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二次开发专题模块培训报名开始啦

    我知道了