CATIA使用CAA二次开发:创建草图

2014-07-18 19:06:53|?次阅读|上传:wustguangh【已有?条评论】发表评论

关键词:C/C++, CAA, CATIA|来源:唯设编程网

1. 学习目标

本文阐述如何创建一个Part文档,在草图中创建几何元素和约束,进行一些操作:使用几何元素和标注系统,定义圆角。

通过该实例,你可以学会:

l  创建草图元素。

l  创建约束。

l  以多种方式使用尺寸系统。

l  在两条直线上创建一个圆角(重新限制)。

下图是一个由该实例创建的CATPart文档:

CATIA使用CAA二次开发:创建草图

程序创建了由一个草图构成的PartBody,这个草图包含:

l  在草图环境中创建的几何元素。

l  基于几何元素创建的约束。

该实例主要介绍SketcherInterfaces框架的应用。

2. 技术要点

2.1 创建并初始化文档

int main(int    iArgc,   // Number of arguments (1)
         char** iArgv)   // Path to the new *.CATPart document
{
  //--------------------------------------------------------------------
  // Check arguments
  //--------------------------------------------------------------------
  if(iArgc>2) return 1;
  char *pFileName = iArgv[1];

  char *pSessionIdent = "SampleSession";
  //------------------------------------------------------------------------------------------
  // PART DOCUMENT CREATION
  //------------------------------------------------------------------------------------------
  CATSession *pSession = NULL;
  Create_Session(pSessionIdent,pSession);

  CATDocument *pDocument = NULL;
  CATDocumentServices::New("CATPart",pDocument);
  if ( NULL == pDocument ) return 1;

  CATInit_var spInit (pDocument);
  if( NULL_var == spInit ) return 3;
  spInit->Init(TRUE);

  CATIContainerOfDocument_var spDoc = pDocument;
     CATIContainer *piContainer = NULL;
  if ( FAILED(spDoc->GetSpecContainer( piContainer)) ) return 4;

  CATIPrtContainer *piPrtContainer = NULL;
  HRESULT hr = piContainer->QueryInterface( IID_CATIPrtContainer, (void **)&piPrtContainer );
  if ( FAILED(hr) ) return 5;

  CATIPrtPart_var spPart(piPrtContainer->GetPart());
  piPrtContainer->Release();

该部分描述了创建一个零件文档(CATPart)的通常步骤。

发表评论0条 】
网友评论(共?条评论)..
CATIA使用CAA二次开发:创建草图