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二次开发入门教程---19 创建一条线

[复制链接]

2017-12-22 11:06:27 3582 1

admin 发表于 2017-12-22 11:05:33 |阅读模式

admin 楼主

2017-12-22 11:05:33

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

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

x
CATIA二次开发入门教程---19 创建一条线, E# p/ w& w% e( D; y

9 B1 }) ]' ~: R& L6 \[mw_shl_code=c,true]- p/ ]3 l) W- V
        CATFrmEditor *pEditor = CATFrmEditor::GeTCurrentEditor();7 K9 s% J) `& X, x- o( F
        CATDocument *pDoc = pEditor->GetDocument();- i: p+ m6 V5 ^: P
        CATIContainerOfDocument_var spConOfDoc = pDoc;1 Y5 V% F: y! F
        if (spConOfDoc == NULL_var)
5 n$ l) \' M$ _" l1 _! u1 ~  i        {
- _+ q, w/ R+ x( m8 b" T                popUpNotifyDialog("No spConainer of document");8 L& l% U$ V/ N1 t# t, o% |8 i5 q
        }: a0 Y& n' b. s- `, I# a0 b. l
        CATIContainer *pCon = NULL;) U9 m% s" p0 M9 t9 @" _5 K
        HRESULT hr = spConOfDoc->GetSpecContainer(pCon);1 y# m$ v) m- T% y) f

" |+ |+ F7 Z" n4 V; |8 Q. _        //get GSM factory
( y) s" ~! C! x7 d9 W5 }" J4 J. g2 C% y$ p/ v9 Y* X5 g; e7 \+ ^2 {# c
    CATMathPoint p1,p2;
( W' O5 A# h& t8 g        p1.SetCoord(0,0,0);, f: F) s0 w6 @
        p2.SetCoord(10,10,10);/ A+ d: s: }. G% s% ]' K9 _
        8 y" p" N# D5 ^6 `* {0 O
4 r& y5 R4 w# z7 W. r* ^( [
     CATIGSMFactory_var spGSMFactory = pCon;) b2 c& ^- G% h8 U$ L& o* I
  ) A0 S: @- C& Z: h# n
         CATIGSMPoint_var  spP1 = spGSMFactory->CreatePoint(p1,"");
( P: }2 Y: D3 F         CATIGSMPoint_var  spP2 = spGSMFactory->CreatePoint(p2,"");5 Z. a7 E2 L9 ?' s
     
3 y% t( }. ^1 ^& i  L  CATIGSMLinePtPt_var spLine =  spGSMFactory->CreateLine(spP1,spP2,NULL_var);1 q3 _/ P/ C) Z. @3 m0 L& ~
  ?( [+ w7 e1 O7 _" k6 {  z
  CATISpecObject_var spSpecObject = spLine;
! v& o6 p; I; ?* s- l  CATIGSMProceduralView_var spGSMProceduralView = spSpecObject;
$ f$ W! j# X( c' O; C- v) a- M6 P% `6 m# l& v9 d! d
  spGSMProceduralView->InsertInProceduralView();
; r, ^# _) j6 H/ [1 y, e! u
; i) x' [1 F/ g# D  H  spSpecObject->Update();[/mw_shl_code]
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复1

admin 发表于 2017-12-22 11:06:27

admin 沙发

2017-12-22 11:06:27

在此基础上,创建线的步骤如下:
1)创建两个点并将其转换为CATISpecObjects。
double Coords[3];
Coords[0] = 0;
Coords[1] = 0;
Coords[2] = 0;
CATIGSMPoint_var spPoint1 = spGSMFactory->CreatePoint(Coords); CATISpecObject_var spSpecPoint1 = spPoint1;                  
Coords[0] = 8;
Coords[1] = 6;
Coords[2] = 7;
CATIGSMPoint_var spPoint2 = spGSMFactory->CreatePoint(Coords);
CATISpecObject_var spSpecPoint2 = spPoint2;
2) 利用创建的点创建一条线,并将其转换为CATISpecObject
CATISpecObject_var  spSupport = NULL_var;
CATIGSMLinePtPt_var spLine1 = spGSMFactory->CreateLine(spSpecPoint1, spSpecPoint2, spSupport);
CATISpecObject_var spSpecLine1 = spLine1;
3) 更新创建的线,并将其添加到视图中。
spSpecLine1->Update();
CATIGSMProceduralView_var spCurObj = spLine1;
spCurObj->InsertInProceduralView();
( T% ~6 I/ M% C2 A% _2 N
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了