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

[资料] CATIA二次开发入门教程---19 创建一条线

[复制链接]

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

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

admin 楼主

2017-12-22 11:05:33

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

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

x
CATIA二次开发入门教程---19 创建一条线
* }. F6 v6 q" ]- v
+ E  i6 u  Q8 n. O& y" ?; S, U7 m[mw_shl_code=c,true]2 ]4 v  v2 m& |
        CATFrmEditor *pEditor = CATFrmEditor::GeTCurrentEditor();# p9 t! r" W' P% m2 {& @
        CATDocument *pDoc = pEditor->GetDocument();
: ]/ B+ i: Z# C; k& R5 b/ M        CATIContainerOfDocument_var spConOfDoc = pDoc;
2 x  j3 [: j% |3 k9 W! g        if (spConOfDoc == NULL_var)( c: _' t* G4 h" y/ V/ M# J
        {4 }" z% `; k' F5 U
                popUpNotifyDialog("No spConainer of document");% ^6 x- Q% ?' S* {0 ]3 [# a
        }
! ^) A% [$ S+ N( s% j1 y/ W        CATIContainer *pCon = NULL;) z  }6 t) j. Y& \
        HRESULT hr = spConOfDoc->GetSpecContainer(pCon);
- q# p, I: t: X4 j1 O# F8 @6 }6 |; i! h' x8 Z9 B3 r) |# e7 l
        //get GSM factory! E& w& m- v, N( b
6 ^+ l7 f9 `7 ~/ o& |! E6 h4 i
    CATMathPoint p1,p2;
7 u$ c7 B' b' _/ s/ P        p1.SetCoord(0,0,0);
5 }. H/ S' W) W4 j6 W: c8 E9 {" E' A        p2.SetCoord(10,10,10);& q+ `+ P3 P( h' m$ f7 J% F% A
        & d7 r. D9 y, t# `
" i; m& a% F3 M+ R
     CATIGSMFactory_var spGSMFactory = pCon;* D: G; E: O6 |
  
3 m7 Y5 n( L9 L. z0 Y         CATIGSMPoint_var  spP1 = spGSMFactory->CreatePoint(p1,"");
' j& g2 ?" C. p% ?- _6 h4 B7 T9 y         CATIGSMPoint_var  spP2 = spGSMFactory->CreatePoint(p2,"");3 t5 T. U4 d9 b3 A/ e
     
  |! v3 j9 g0 o: {. }  CATIGSMLinePtPt_var spLine =  spGSMFactory->CreateLine(spP1,spP2,NULL_var);
* C6 f! A& C+ b0 m( z/ w+ K# q" r  u* k2 h
  CATISpecObject_var spSpecObject = spLine;. r# H  I6 u% c. w0 G
  CATIGSMProceduralView_var spGSMProceduralView = spSpecObject;- Q5 S- T* ^3 i1 e! V

- E, R# W* r2 V  spGSMProceduralView->InsertInProceduralView();* T" c' N. F* ^! {9 S+ s' B* p
$ ~/ p+ z0 s' U' |6 V/ H
  spSpecObject->Update();[/mw_shl_code]
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 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();
) w. G5 j9 ]$ N
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了