微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于Qt 及OpenCASCADE的建模技术研究

基于Qt 及OpenCASCADE的建模技术研究

时间:01-25 来源:互联网 点击:

并且是通过引用处理的.

如果需要的对象不是单一的,而是一系列的,那么TColGeom2d 包(用来处理这类对象的集合容器)可以提供必要的功能.特别地,该包为通用类中那些标准的和经常使用的实例化提供几何对象.

TColGeom2d 包为来自Geom2d 包的曲线提供一维数组.二维数组和序列的实现,所有这些对象能以句柄和数值两种不同的方式处理.TopAbs 包提供通用枚举类,用来描述拓扑学基本概念和处理枚举类的方法,不包含具体类.

TopAbs 定义了3 个概念:拓扑类型( 由Top-Abs_ShapeEnum 类描述).拓扑方向(由TopAbs_Orienta-tion 类描述)和拓扑状态(由TopAbs_State 类描述).

3.4.2 三维几何数据结构

三维几何对象的数据结构主要由Geom 包提供.

Geom 包包含了所有的基本几何转换(如等价.旋转.平移.镜像.缩放和复合变换等).另外,Geom 包也提供了一些基于几何对象引用定义的特殊函数(如在B 样条曲线上增加一个控制点,对曲线进行改善等).

Geom 包中所有几何实体都是以STEP 方式处理的,包中可实现的非持久的通过句柄处理的对象有:点.笛卡尔点.向量.方向具有幅值的向量.轴.曲线.直线.圆锥.圆.椭圆.双曲线与抛物线.基本曲面.平面.边界曲线与边界曲面.裁剪曲线与裁剪曲面.非均匀有理化B 样条曲线与曲面.Bezier 曲线与曲面.圆柱面.球面与螺旋面.扫描曲面.线性挤压曲面.旋转曲面.偏移曲面.

3.4.3 拓扑数据结构

OCC 使用TopoDS 包描述了拓扑数据结构.To-poDS 包提供了两套类:一套由TopoDS_Shape(与TopoAbs 包中列出的标准拓扑Shape 一致)派生;另一套由下层Shape(既没有拓扑方向也没有位置)派生.

OCC 描述了参数空间对象的数据结构.这些描述用到了定位和限制.可以由这些术语描述的Shape 的类型有:顶点.面和Shape.顶点依据参数空间位置来定义,面和Shape 依据空间的限制来定义,可以将上述简单Shape 组成集.例如,一个边集形成一个线框;一个面集形成一个壳;一个实心体集形成一个组合实心体.

也可以将不同类型的Shape 组成一个复合体,并为一个Shape 指定拓扑方向和位置.依据Shape 的复杂程度,从顶点到组合实心体依次将Shape 列出来,这样能方便地知道一个Shape 是由哪些简单Shape 组成的.事实上,这就是TopoDS 包的意图.TopoDS_Shape 类描述了Shape 的引用.它包含一个指向下层抽象Shape 的引用.一个拓扑方向和一个引用坐标.该类是通过数值处理的,不能被共享.描绘下层Shape 的类从不被直接引用,而是通过TopoDS_Shape 类被间接引用.

3.5 建立几何体的相关包

在创建一个几何对象前,必须知道这个对象是2D的还是3D 的,以及将如何使用这个对象.下面简述基本几何类型中主要的几个包.gp 包为二维和三维对象提供了一些通过值处理的类,定义了一些基本的非持久几何实体,这些实体在二维和三维的代数计算和基本几何结构分析中用到.gp 包可以建立的几何实体有:

二维和三维直角坐标(x,y,z).矩阵.笛卡尔点.向量.方向.轴.直线.圆.椭圆.双曲线.抛物线.平面.无穷圆柱曲面.球面.螺旋面和圆锥面;它也提供了一些基本的几何转换,如等价.旋转.平移.镜像.缩放.复合变换等.

BRepAlgoA-PI包提供用布尔运算来建立新的模型;BRepBuilderAPI包能够建立点.边.线框.面.壳.实体.组合实体等;BRepFilletAPI包可实现对实体进行倒角.圆角等操作.

4 结语

Qt 是一个使用广泛的跨平台图形界面开发工具,可用于Windows,Linux,Mac OSX 和许多平台.它具有灵活的面向对象的结构.清晰的文档以及直观的API,针对同功能的程序能够运行在不同的系统平台,并保持一致的界面和功能,较好地增强了程序的灵活性和可移植性,为开发跨平台桌面应用程序的人机交互界面提供了良好的支持.OpenCASCADE 提供了多种包建立基本和复杂几何模型.

在Visual C++环境下结合Qt 和OpenCASCADE 类库能够开发出跨平台的几何建模程序,建立不同复杂程度的几何模型,可以作为相关数值计算软件的建模模块.

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top