码迷,mamicode.com
首页 > 编程语言 > 详细

AnyCAD(MFC版)一些API介绍

时间:2018-05-25 14:03:06      阅读:477      评论:0      收藏:0      [点我收藏+]

标签:清空   cad   返回值   protected   统一   void   分割   and   ssi   

AnyCAD(MFC版)一些API介绍

AuView3dAPI类

  该类主要包含对文档AuView3d(MFC文档程序视类)以及AuWindow3d(对话框中显示框)的显示操作。

m_View3d成员对象

  类型: protected AnyCAD::API::View3d
  可借用View3d类完成许多显示操作,如利用GetSceneManager函数进行擦除(代码如下);

    m_View3d.GetSceneManager().ClearNodes();        //清空3D场景
    m_View3d.GetSceneManager().ClearNodes2d();      //清空所有的2D对象
    m_View3d.GetRenderer().ClearSelection();        //清空选择集
    m_View3d.RequestDraw(1);

AuWindow3d类

  对话框程序显示框,作为三维显示框。
  

EdgeClassifier类

  对TopoShape的边界进行分类提取。包括三类:free edges,shared edges,standalone edges。
  注:通过实验发现,有些边无法进行分类(即用三类进行提取都提取不到)。一次实验中对一个长方形边界进行边界提取,结果为free edges(3), shared edges(0), standalone edges(0),但是用GlobalInstance::topoExplor.ExplorEdges(shape)发现提取得到所有4条边界。

    EdgeClassifier edgeClassfier;
    edgeClassfier.Initialize(shape);                                        //用shape初始化
    TopoShapeGroup shareEdgeGroup = edgeClassfier.GetSharedEdges();         //shared edges,个数为0
    TopoShapeGroup standaloneEdgeGroup = edgeClassfier.GetStandaloneEdges();//standalone edges,个数为0
    TopoShapeGroup freeEdgeGroup = edgeClassfier.GetFreeEdges();            //free edges,个数为3
    TopoShapeGroup shareEdgeGroup1 = GlobalInstance::topoExplor.ExplorEdges(shape); //所有边界,个数为4

  多次实验的结果都是三类边界总条数比实际条数少1。
  

GlobalInstance类

  获取全局实例,类中包含很多静态成员对象,从而可以通过这些成员对象将对应类操作统一起来。

brepTools成员对象

  类型: static BrepTools
  可通过该对象进行边界造型等操作;

topoExplor成员对象

  类型: static TopoExplor
  可借用TopoExplor类对程序中的TopoShape的子类型(点、线、面)进行检测;
 

SharedEdgeShape类

  对公共边界进行操作,如可以获取该边界的父平面。但没有找到涉及到类SharedEdgeShape的相关函数,仅在HoleExplor类中找到一个返回值为SharedEdgeShapeList的函数。
 

TopoDataExchangeIges类

  该类可以对IGES格式进行读取。读入的模型类型为Topo_COMPOUND。
 

TopoDataExchangeStep类

  该类可以对STEP格式进行读取。读入的模型类型为Topo_SOLID。
 

TopoDataExchangeStl类

  该类可以对STL格式进行读取。读入的模型类型为Topo_SHELL,所有的面会转化为三角面片(如一个矩形面会转化为两个三角面片,模型现实会发现多出一条边界将矩形面分割成两个三角面)。
 

TopoExplor类

  该类可以对TopoShape的子类型(点、线、面)进行检测。
  

TopoShape类

  可以对模型进行一定操作,获取模型点线面特征。

TopoShapeConvert类

  可以对模型进行一定操作,获取模型点线面特征。

TopoShapeGroup类

  拓扑对象组。如对拓扑对象进行子类型检测可以获得拓扑对象组(存储获取的子类型),进而可以对子类型进行操作。
  

TopoShapeProperty类

  获取TopoShape的几何属性。

    void    SetShape (const TopoShape &shape)           //设置需要计算的TopoShape
    Real    EdgeLength () const
    Real    SurfaceArea () const
    Real    SolidVolume () const
    Vector3     CenterOfMass ()

AnyCAD(MFC版)一些API介绍

标签:清空   cad   返回值   protected   统一   void   分割   and   ssi   

原文地址:https://www.cnblogs.com/silentteen/p/9087598.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!