OpenCASCADE开发指南<三>:OCC 基础类概述

1、OCC 基础类概述

  基础类包括根类组件、 串类组件、 集合容器组件、 标准对象的集合容器组件、向量和矩阵类组件、 基本几何类型组件、 常用数学算法组件、 异常类组件、 数量类组件和应用程序服务组件。

在这里插入图片描述

1 根类组件

  根类是基本的数据类型和类, 其它所有类都是依此而建立的。 它提供以下类型和类:
(1) 基本类型, 如 Boolean(布尔类型)、 Character(字符型)、 Integer(整型)或者 Real(实型)等。
(2) 动态对象的安全处理, 以确保那些不再被引用的对象能被及时删除(详见 Standard_Transient 类)。
(3)可设置的内存优化管理器。它能改善那些经常使用动态对象的程序性能。
(4) run-time 类型信息扩展机制。它使得复杂程序的创建变得更为简易。
(5)异常管理。
(6) C++各种流的封装。

 根类主要在 Standard 和 MMgt 两个包中实现。

2 串类组件

  串类用来处理动态大小的 ASCII 和 Unicode 字符序列,可以通过句柄处理,因此也可以被共享。串类在 TCollection 包中实现。

3 集合容器组件

  集合容器是处理动态大小的数据集合的类。 集合容器是通用的, 即每一种集合容器定义了一种结构和一些算法, 可持有许多对象——通常这些对象不必从根类继承。 这与 C++模板相似。 如果需要使用一个给定对象类型的集合容器, 则必须对这个元素的指定类型进行实例化。 一旦这个实例声明被编译, 所有基于这个通用集合容器的函数都可以在集合容器对象中实现。

  集合容器包含许多通用类, 如 run-time 大小的数组、 列表、 栈、 队列、 集(Set)和散列图(hash map)。集合容器在 TCollection 和 NCollection 包中实现。

4 标准对象的集合容器组件

  TColStd 包为 TCollection 包中通用类的一些经常使用的实例化提供对象(来自 Standard 包)或者串(来自TCollection 包)。

5 向量和矩阵类组件

  向量和矩阵类提供了有关向量和矩阵的常用数学算法和基本运算(加、乘、转置、求逆等)。

6 基本几何类型组件

  基本几何类型提供了基本几何实体和代数实体的实现。这些实现符合 STEP(Standard Exchange of Product data model,即产品数据模型的交换标准)。它们提供基本几何 Shape 的描述(点、 向量、 直线、 圆与圆锥、 平面与基本曲面、 通过坐标轴或坐标系使 Shape 在平面上或空间中定位) 和 Shape 几何变换的定义与应用(平移、旋转、对称、缩放、复合变换、代数计算工具)。

7 常用数学算法组件

  常用数学算法为那些经常使用的数学算法提供 C++实现。这些算法有:
(1)求解线性代数方程组的算法 ;
(2)求一元或多元函数最小值的算法;
(3)求解非线性方程或非线性方程组的算法;
(4)求矩阵特征值和特征向量的算法。

8 异常类组件

  OCC 提供了一套异常类。所有异常类都是基于它们的根类—— Failure 类的。 异常类描述了函数运行期间可能发生的异常情况。 发生异常时, 程序将不能正常运行。对这种情况的响应称为异常处理。

9 数量类组件

  数量类为日期和时间信息提供支持,同时也为表示常用物理量的基本类型(如长度、面积、体积、质量、密度、重量、温度和压力等)提供支持。

10 应用服务组件

  应用服务组件包括几种低级服务的实现。借助 OCC 平台,这些服务可以使

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/535412.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue中如何查看组件有哪些函数与变量

在开发的过程中,经常用到他人的框架,特别是开源框架比如element,uniapp等。其中就涉及到框架里对应的组件。而组件里又有哪些内置的函数,我们通常是去查官方文档。然后很多的时候需求的多样性,要改的地方也是不一样的,…

C#构造函数

C#中的构造函数是一种特殊的方法,用于创建和初始化类的对象。构造函数的名称与类的名称相同,并且没有返回类型。 在C#中,构造函数有以下几种类型: 默认构造函数:如果在类中没有定义构造函数,系统将自动提供…

写给新手的单元测试框架unittest运行的简单问题

当使用unittest框架编写和运行单元测试时,需要遵循以下步骤: 1、导入unittest模块:在代码中首先导入unittest模块。 import unittest 2、创建测试类:创建一个继承自unittest.TestCase的测试类。该类将包含一系列测试方法。 clas…

rancher里的ingress如何配置gzip压缩

方案一,未试验成功,但配置过程值得记录一下 通过配置configmap,然后在ingress的deployment里引用configmap实现。 参考文章 创建configmap apiVersion: v1 kind: ConfigMap metadata:name: nginx-ingress-controllerannotations:{} # k…

怎样提高服务器在网络里的安全性?

在互联网行业中,网络安全是已经必须要重视的一点。不管是哪个行业,一旦不小心,自己经营多年的成果可能就因为安全这个问题。付之东流,用户在通过服务器平台搭建的网络环境中要实时的留意自己的安全问题。 更新和维护操作系统和软件…

C语言学习--pow函数和

1.首先使用pow函数必须要加头文件 : #include<math.h> double pow(double x, double y); pow() 函数用来求 x 的 y 次幂&#xff08;次方&#xff09;&#xff0c;x、y及函数值实际上为double型 注意&#xff0c;在某些特定的情况之下&#xff0c;pow函数的double类型…

如何在群晖NAS部署WPS容器并实现无公网IP远程访问本地office软件

文章目录 1. 拉取WPS Office镜像2. 运行WPS Office镜像容器3. 本地访问WPS Office4. 群晖安装Cpolar5. 配置WPS Office远程地址6. 远程访问WPS Office小结 7. 固定公网地址 wps-office是一个在Linux服务器上部署WPS Office的镜像。它基于WPS Office的Linux版本&#xff0c;通过…

若依上传文件/common/upload踩坑

前言&#xff1a;作者用的mac系统&#xff08;这个是个坑&#xff09;&#xff0c;前端用的uniapp&#xff0c;调用若依通用上传方法报错NoSuchFileException: /home/ruoyi/uploadPath/upload... 前端上传代码示例如下: uni.chooseImage({count: 1,success(res){ uni.uploa…

【Python】科研代码学习:十 evaluate (metrics,Evaluator)

【Python】科研代码学习&#xff1a;十 evaluate Evaluate评估类型简单使用教程如何寻找想要的 metric使用 Evaluator与 transformers.trainer 配合使用疑问与下节预告 Evaluate 【HF官网-Doc-Evaluate&#xff1a;API】 看名字就可以知道&#xff0c;Evaluate 是 HF 提供的便…

3.13

微机原理 B C D 可屏蔽中断 串操作方向 将补码取反转换成源码 源码转换成真值 -9 控制 BHE ALE 00100100 24H 02H&#xff0c;05H 波特率 基址相对寻址 00040H 6A910H IP低 IP高 CS低 CS高 68H&#xff1a;50H&#xff1a;24H:10H 68500 2410H 6A910H 存放中断类型…

Igraph入门指南 6

3、make_系列&#xff1a;igraph的建图工具 按照定义&#xff0c;正则图是指各顶点的度均相同的无向简单图&#xff0c;因为我目前没有找到描述度相等的有向&#xff08;或自环图&#xff09;的标准名称&#xff0c;所以在本文中借用一下这个概念&#xff0c;并加上定语有向无…

开发指南008-接口路由规定

前端只面向网关&#xff0c;网关里配置路由&#xff0c;配置也在nacos里&#xff1a; 平台是根据前缀来路由到具体的微服务的&#xff0c;路由前缀格式如下&#xff1a; /微服务标识/***: 例如/usermanager/**会路由到用户管理微服务&#xff0c;这种格式的接口会校验权限。没…