• 纸尿裤等纸制品新国标发布 2019-07-13
  • 世界杯期间在家撸串的正确姿势-热门标签-华商网数码 2019-07-10
  • 人工+智能新闻舆情大数据服务 2019-07-08
  • 最后的骑兵:解放军高原骑兵腰挎马刀热血冬训 2019-06-29
  • “一带一路”大学双创教育“和声正美” 2019-06-29
  • 落实河长制必须持之以恒 2019-06-22
  • 跟青岛人逛海边,聊上合 2019-06-18
  • 望远镜的眼睛有多大?这个参数很关键 2019-06-18
  • 人民日报召开创刊70周年读者座谈会 2019-06-09
  • 【改革印记——看中国发展】变迁印记,留下的是韵味现实 2019-05-31
  • [大笑]阿Q都是这么说的。。。。。。 2019-05-31
  • 曾祖红:天津欢乐谷二期将于6月30日对外开放 2019-05-28
  • 新发现:墨西哥发现恐龙新物种 2019-05-21
  • 为吸引中国游客 世界各国纷纷喊话:“我最懂你” 2019-05-21
  • 任天堂Switch九月开始收连线费 详细方案公开 2019-05-20
  • CATIA二次开发(CAA)技术基础之零件设计 - 下载本文

    青海11选五怎么中奖 www.skw3.com

    pIPartRequest->GetMainBody(ViewContext,spMainBody); 例 4:获得 CATBody 的代码如下。 CATIBodyRequest *pIBodyRequest= NULL;

    spMainBody ->QueryInterface(IID_CATIBodyRequest,(void**) &pIBodyRequest); CATLISTV(CATBaseUnknown_var) ListResult ; pIBodyRequest->GetResults(\

    CATIGeometricalElement * pIGeometricalElement = NULL ; for (int i=1 ; i<= ListResult.Size(); i++) {

    CATBaseUnknown_var spResult = ListResult[i];

    spResult->QueryInterface(IID_CATIGeometricalElement ,(void**) &pIGeometricalElement ); CATBody_var spBodyResult = pIGeometricalElement->GetBodyResult(); }

    5.2.8 创建轴系

    //首先初始化工厂

    CATIMf3DAxisSystemFactory * pIMf3DAxisSystemFactoryOnFeatCont = spContainer; CATMathPoint Origin (150.0,.0,.0); CATMathVector X (1.0,.0,.0); CATMathVector Y (0.0,1.0,.0);

    CATIMf3DAxisSystem_var NewAxisSystemStd;//创建的轴系

    pIMf3DAxisSystemFactoryOnFeatCont->CreateAxisSystem(Origin,X,Y,NewAxisSystemStd); //对轴系的 X、Y 方向进行修改

    NewAxisSystemStd->SetAxisDirection(CATAxisSystemXNumber, pVectorX); NewAxisSystemStd->SetAxisDirection(CATAxisSystemYNumber, pVectorY);

    5.2.9 创建参数和公式

    1.创建参数

    //初始化 CATICkeParmFactory 工厂

    CATICkeParmFactory_var spParmFactory = spContainer;

    CATICkeParm_var spParam1 = spParmFactory->CreateLength(\

    CATICkeParm_var spParam2 = spParmFactory->CreateLength(\长度单位为米 CATICkeParm_var spParam3 = spParmFactory->CreateLength(\创建长度参数

    // CATIParmPublisher 与 CATICkeFunctionFactory 功能为将所有参数显示在结构树中 CATIParmPublisher_var

    spParmPublisher = NULL_var;

    CATICkeFunctionFactory_var spFuncFactory =CATCkeGlobalFunctions::GetFunctionFactory(); spParmPublisher=

    spFuncFactory->GetCurrentSet(CATICkeFunctionFactory::Parameter,spPrtPart,CATCke::True); spParmPublisher.Append(spParam1); spParmPublisher.Append(spParam2); spParmPublisher.Append(spParam3); 2.创建公式 //创建参数列表

    CATCkeListOfParm pList; pList->Append (spParam1); pList->Append (spParam2); pList->Append (spParam3); //创建公式 Height = Width + Base CATICkeRelation_var

    spFormula1

    =

    spParmFactory->CreateFormula(\

    spParam3, pList, \ spParmPublisher, CATCke::True);

    spFuncFactory->AddToCurrentRelationSet(spFormula1, spParmPublisher); //修改参数进行测试 spParam1->Valuate(0.5);

    5.2.10 创建几何图形集等节点

    //初始化 CATIMechanicalRootFactory 工厂

    CATIMechanicalRootFactory_var spMechanicalRootFactory = spContainer; //创建几何图形集

    virtual HRESULT CreateGeometricalSet(const CATUnicodeString& iUserName,

    const CATISpecObject_var& iDestination, CATISpecObject_var int iPosition=-1 ) = 0 ;

    函数说明如下表 5.1 所示:

    & oGeomSet,

    表 5.1 函数说明 iDestination 为零件节点 几何图形集位于零件最后 iPosition = -1 几何图形集位于零件最后 iPosition = 0 几何图形集位于零件中 0 < iPosition <= iDestination 的大小 iPosition +1 处 E_FAIL Otherwise //创建有序的几何图形集

    iDestination 为其他节点 几何图形集与 iDestination 在同一父节点 下,且在 iDestination 节点后 几何图形集位于 iDestination 中的最后 几何图形集位于 iDestination 中的 iPosition +1 处 E_FAIL virtual HRESULT CreateOrderedGeometricalSet (const CATUnicodeString& iUserName,

    const CATISpecObject_var& iDestination, CATISpecObject_var int iPosition=-1 ) = 0 ;

    //创建几何体

    virtual CATISpecObject_var CreatePRTTool( const CATUnicodeString& iUserName,

    const CATISpecObject_var& iDestination) ;

    virtual CATISpecObject_var CreatePRTTool( const CATUnicodeString& iUserName,

    const CATISpecObject_var& iDestination int iPosition=-1) ;

    & oOrderedGeomSet,

    5.2.11 创建实体特征

    实体特征主要包括凸台、槽、旋转体、孔、盒体、倒圆、倒角和厚曲面等特征,创建实体 特征采用 CATIPrtFactory 工厂中的方法,相应的方法如下表所示。

    表 5.2 创建实体特征的方法 目标 凸台 槽 旋转体 孔 盒体 倒圆 倒角 厚曲面 方法 CreatePad CreatePocket CreateRotate CreateHole CreateShell CreateFillet CreateChamfer CreateThickness

    现举创建孔的例子如下:

    1.常用的创建孔的方法包括三种,依次如下。

    public virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihSurface, const CATISpecObject_var

    ihDirection) = 0

    参数介绍:ihSurface 指支持孔的平面或曲面;ihDirection 指孔的特征方向,特征方向可用 CATIGSMFactory 中的 CreateDirection 创建,孔方向若为 NULL_var,则按照曲面的法向创建孔。

    public virtual CATISpecObject_var CreateHole( const CATISpecObject_var ihPoint,

    const CATISpecObject_var const CATISpecObject_var

    ihSurface, ihDirection,

    const int IsPointOnSurface) = 0

    参数介绍:ihPoint 指在支持面上的特征点;ihSurface 指支持孔的平面或曲面;ihDirection 指孔的特征方向,孔方向若为 NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如 果为 0,说明 ihPoint 不在 ihSurface 上,若为 0,则说明 ihPoint 在 ihSurface 上。

    public virtual CATISpecObject_var CreateHole( const CATMathPoint iMathPoint,

    const CATISpecObject_var const CATISpecObject_var

    ihSurface, ihDirection,

    const int IsPointOnSurface) = 0

    参数介绍:iMathPoin 指在支持面上的数学点;ihSurface 指支持孔的平面或曲面;ihDirection 指孔的方向,孔方向若为 NULL_var,则按照曲面的法向创建孔;IsPointOnSurface 的值如果为 0,说明 ihPoint 不在 ihSurface 上,若为 0,则说明 ihPoint 在 ihSurface 上。

    2.设置孔的参数

    CATISpecObject_var spHole = spPrtFactory-> CreateHole(); CATINewHole_var spNewHole= spHole;

    spNewHole-> SetHoleType(1);//设置孔类型为简单孔 spNewHole->SetBottomType(1) ;//设置孔底面类型为平底 spNewHole->SetDiameter(5)//设置直径 spNewHole->SetLimit(1)//设置为盲孔 CATIHoleLimit_var spHoleLimit = spHole; spHoleLimit ->SetOffset(5);//设置孔的深度 3.将孔添加在结构树中

    spHole ->Update();

    CATIGSMProceduralView_var ispProcView = spHole;

    if (NULL_var != ispProcView ) {HResult rc = ispProcView ->InsertInProceduralView();}

    5.2.12 创建零件设计表

    //初始化 CATICkeParmFactory 工厂

    CATICkeParmFactory_var spParmFactory = spContainer; //创建设计表的函数如下

    CATIDesignTable_var CreateDesignTable( const CATUnicodeString& iRelationName,

    const CATUnicodeString& const CATUnicodeString& int orientation = 1, int sheetWithoutFile = 0 );

    函数说明:iRelationName 为设计表的名字,iComment 为设计表的说明,iFilePath 为创建 表的路径。

    创建零件族的步骤如下: 1.创建参数

    CATICkeParm_var spPp1 = spFact->CreateInteger (\ CATICkeParm_var spPp2 = spFact->CreateReal (\ CATICkeParm_var spPp3 = spFact->CreateString (\

    CATICkeParm_var spPp4 = spFact->CreateBoolean (\TCke::True); CATICkeParm_var spPp5 = spFact->CreateLength (\ CATICkeParm_var spPp6 = spFact->CreateAngle (\ 2.将参数显示在结构树上

    CATIPrtContainer_var spPrtCont = spContainer;

    CATIParmPublisher_var spPubroot = spPrtCont->GetPart();

    CATICkeFunctionFactory_var fact = CATCkeGlobalFunctions::GetFunctionFactory(); CATISpecObject_var spParameterSet = NULL_var; spParameterSet=

    fact->GetCurrentSet(CATICkeFunctionFactory::Parameter,spPubroot,CATCke::True);

    CATIParmPublisher_var spParmPublisher = spParameterSet; spParmPublisher->Append(spPp1);

    iComment, iFilePath,





  • 纸尿裤等纸制品新国标发布 2019-07-13
  • 世界杯期间在家撸串的正确姿势-热门标签-华商网数码 2019-07-10
  • 人工+智能新闻舆情大数据服务 2019-07-08
  • 最后的骑兵:解放军高原骑兵腰挎马刀热血冬训 2019-06-29
  • “一带一路”大学双创教育“和声正美” 2019-06-29
  • 落实河长制必须持之以恒 2019-06-22
  • 跟青岛人逛海边,聊上合 2019-06-18
  • 望远镜的眼睛有多大?这个参数很关键 2019-06-18
  • 人民日报召开创刊70周年读者座谈会 2019-06-09
  • 【改革印记——看中国发展】变迁印记,留下的是韵味现实 2019-05-31
  • [大笑]阿Q都是这么说的。。。。。。 2019-05-31
  • 曾祖红:天津欢乐谷二期将于6月30日对外开放 2019-05-28
  • 新发现:墨西哥发现恐龙新物种 2019-05-21
  • 为吸引中国游客 世界各国纷纷喊话:“我最懂你” 2019-05-21
  • 任天堂Switch九月开始收连线费 详细方案公开 2019-05-20
  • 18选7 360排列三走势图表 围棋很难学 广东26选5k线图 六和彩特码资料图库 十一选五江苏十一选五一定牛 曾道人特码救世网 七乐彩中2个号码 排列5中2个号有奖吗 淘宝快3软件下载 双色球点位小公式 双色球爱彩网专家杀号 体彩什么频道开奖直播 任选9场开奖结果奖金 山东十一选五走势图网易