PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

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

[复制链接]

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

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

admin 楼主

2018-5-5 08:16:03

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

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

x
# H: x* S0 v) B7 p
- M7 h- c$ j1 G$ n. I9 }
- D  r1 n: H; Y& R6 |; H* F
提示:要关联的Doc必须是当前Doc. L+ b- X# A# o
CATFrmEditor *pCurrFrmEditor = GetEditor();
& \* ?; S, Z# D- U4 K0 |7 NCATPathElement oUIActPathElem = pCurrFrmEditor->GetUIActiveObject();
' \2 V1 w1 f, Y+ u( h$ ~CATBaseUnknown* pCurrElemBase = oUIActPathElem.CurrentElement(); + ]( \6 p) k- B$ d2 g5 g
CATILinkableObject_var spLink(pCurrElemBase);
' r8 A3 m; Y5 V6 v4 x1 m$ m
% D  A1 {) `& m$ j; t: L
! O: a1 q4 Y9 g% ?8 v1。首先要生成一个新的Drawing, 在interactive mode的话,( G' K  K( U' H! Q" V
从session QI 得到一个CATIIniInteractiveSession,
. M; l2 H" S( T用CATIIniInteractiveSession::New("Drawing", opMyEditor)9 N. V' Q4 c$ j4 o4 F$ }
来生成一个新Drawing。(baTCh的话用CATDocumentServices) ' f/ F8 `( p2 X5 p
6 u' p" n" t4 l" d+ w9 J4 Z) n
2.从这个新Drawing的Doc QI 一个CATIDftDocumentServices,
& m, E6 C  y! L用CATIDftDocumentServices::GetDrawing()莱得到CATIDrawing, : F3 b9 Y" K( h
CATIDrawing QI CATIDftDrawingFormats,! V2 J8 Z' z' @+ u
CATIDftDrawingFormats::GetAvailableFormats()/ ~1 F# u5 O7 v% F! G5 G
得到可用的Format先放着,以后从这里面取一个自己想用的设置上去 ) M* @( G/ N/ G6 u
5 G: q& l  u0 o6 }& F" t1 u+ M3 }
3。从3D生成Drawing要用到CATIDftViewMakeUp。
- l6 Y3 u% F& }& @5 U: ^3 c先从Container QI CATIDrwFactory, / G& y- _$ J& ?* T
用CATIDrwFactory::CreateViewWithMakeUp()" q1 h4 i) h2 A3 N0 U$ c. p# F# i
生成一个CATIDftViewMakeUp。 , Z1 y. H9 B8 A% f5 D% k# {+ z7 |% w
% F6 ^- p: Y+ @
4。从CATIDftViewMakeUp::GetView()得到一个CATIView,
6 W5 z  W4 h9 E6 j' F# c4 S这是才能用CATIView::SetDoc()把3D的Part的linkableObject设7 |8 I# n- Z( ]+ o, ^
上去,还要用CATIView::SetViewType(FrontView)来指定前视图。
# ?* p* a9 W* o1 ]
8 b" \# M! ?$ {/ f% e  u# p) ?5。还没完,从3D生成2D视图需要指定一个投影平面,( c% E# W) ?" N, T3 R+ F
由CATIView QI 一个CATIGenerSpec,
  ^( Z! E* Z- e$ P4 V- x& s用CATIGenerSpec::SetProjPlane()设定。
7 z7 Z" N, ~! s! Q9 g0 M
: u! ~( y9 Z) t  O! B* |6。最后,对Drawing的Sheet设定Format(前面得到的),
+ x$ s5 Y4 s) C0 R" w2 W" U指定CATIDftViewMakeUp在Sheet中的位置, q, n" Y1 O; o6 r) Q2 U$ ?* [
(CATIDftViewMakeUp::SetPosition), 再最后,9 s% {& P1 T; \# G6 @% z: q0 g$ s
把CATIDftViewMakeUp加到Sheet上(CATISheet::AddView) 2 B3 Y- _) _5 O( e& S, F. m

& _  z: }5 h: f  q7。嗯,别忘了还要Save文件。
) q. j7 M8 ]5 |3 a' U/ B
+ _# @6 @) m6 U, S+ D7 e7 i
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了