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

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

[复制链接]

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

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

admin 楼主

2017-12-22 11:05:33

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

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

x
CATIA二次开发入门教程---19 创建一条线7 E& X  F8 j; f/ D

  ~- h3 ?8 T2 s[mw_shl_code=c,true]/ m  X' O  y9 J
        CATFrmEditor *pEditor = CATFrmEditor::GeTCurrentEditor();6 O/ u- n4 j' p: A$ Z) r
        CATDocument *pDoc = pEditor->GetDocument();
% {# D+ g4 ~4 m: F7 }; s" X6 v+ `        CATIContainerOfDocument_var spConOfDoc = pDoc;
2 e1 A: E5 Z! \        if (spConOfDoc == NULL_var)
  p  @7 @. b8 X1 K' I' N        {
. K4 s# ]- B- h8 H                popUpNotifyDialog("No spConainer of document");
' M' e) D9 B7 u( m" g4 }  ]* c* ^        }
: F" g7 c4 h/ y        CATIContainer *pCon = NULL;
6 u+ [, `* O. }+ M3 Y7 M        HRESULT hr = spConOfDoc->GetSpecContainer(pCon);' d8 W: b8 j# n3 `3 Z2 o' i) R

- u3 j. `6 u6 f3 s) [9 y  O        //get GSM factory- ~7 u/ y. ?6 t+ U7 ^: [
: Q# i3 N1 {. N  h
    CATMathPoint p1,p2;: s( A( W$ y( @$ R3 {  ]: Z1 u
        p1.SetCoord(0,0,0);0 A' ?0 ?% l, A
        p2.SetCoord(10,10,10);
) D3 ^. P$ o  N+ J8 x        7 F7 O" E$ A% Z8 z, c

. d" M! ]% O1 e3 \; u6 r     CATIGSMFactory_var spGSMFactory = pCon;
9 S" \( T, i$ Z$ n7 m& \5 m: i  9 R6 N' ^# R9 @; l
         CATIGSMPoint_var  spP1 = spGSMFactory->CreatePoint(p1,"");; T: p* ^* E. g& t/ h9 c' u2 H
         CATIGSMPoint_var  spP2 = spGSMFactory->CreatePoint(p2,"");: n4 n" O5 O: Z8 D; h' b6 R" _! F
     ( h! B4 _8 N# }2 F0 I
  CATIGSMLinePtPt_var spLine =  spGSMFactory->CreateLine(spP1,spP2,NULL_var);" Y" m# U7 }1 R( S
+ x+ g. Y4 y- T3 |1 i3 v- ~: l
  CATISpecObject_var spSpecObject = spLine;
! u* h1 N4 p6 J, V9 L  CATIGSMProceduralView_var spGSMProceduralView = spSpecObject;) T7 s2 @; f6 e- l5 @" j
+ Y% o. E0 m% G0 \/ G6 x
  spGSMProceduralView->InsertInProceduralView();# r% t5 A  x$ @& W+ Q

( w. t0 ]% ^8 F/ L, c) J+ O  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();

" y* ?6 a& ^1 b- ]
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了