Open CASCADE是一套开放原始码的CAD/CAM/CAE几何模型核心,源自于法国的Matra Datavision公司,这一套函式库系统原来是著名的CADCAM软体EUCLID的开发平台,但是在1998年, Matra Datavision改变了经营策略,从以销售软体为主改变为提供CAD/CAM/CAE软体服务为主的获利模式,并且在1999年公布Open CASCADE的程式原始码,任何人都可以在该公司的网站上下载并且使用这些程式码,而Matra Datavision则以此函式库为基础位客户建立客制化的数值模拟软体,国内CADCAM产业所需的套装软体常常动辄数百万甚至上千万,如此高昂的软体 费用对于中小企业来说确实是非常沉重的负担,而且套装软体中的功能有些其实根本用不到,但是软体使用者却必须花钱购买这些用不到的功能,如果能够针对中小 企业的需求建构一个精简化的CAD/CAM软体,并且在生产需求改变的时候才增加新的功能,将可以有效节省软体成本,而Open CASCADE的成功经验或许可以提供产业界甚至学术界一些新的思考方向 
Open CASCADE是一个功能强大的三维建模工具,提供了点、线、面、体和复杂形体的显示和交互操作,经过深度开发后可实现纹理、光照、图元填充、渲染等图形操作和放大、缩小、旋转、漫游、模拟飞行、模拟穿越等动态操作。 

开源Open CASCADE从底层构建的CAD平台,所以在做机械仿真方面会好用很多,比如数控加工中模拟切屑的去除过程,对于干涉的检查等,使用CASCADE的实体布尔运算即可都可以实现。 
其基本描述从官网翻译大致如下: 
OpenCascade提供二维和三维几何体的生成、显示和分析。主要功能有: 
1.创建锥、柱、环等基本几何体; 
2.对几何体进行布尔操作(相加,相减,相交运算); 
3.倒角,斜切,镂空,偏移,扫视; 
4.几何空间关系计算(法线,点积,叉积,投影,拟合等); 
5.几何体分析(质心,体积,曲率等);

6.空间变换(平移,缩放,旋转)。
高级功能:
1.应用框架服务; 
2.数据交换服务。

OCC是基于OO概念的C++类库,用于精密设备等设计应用程序。典型的应用是CAD(2D/3D)应用程序的开发,制造业,仿真,或者一些其他的图形工具。OCC让你能够很快的开发这些程序。

OCC提供以下模块:

  • 提供2D/3D几何模型库,用以创建任意模型: 创建基本图元包含:棱柱,圆柱,棱锥,圆环等实现了布尔运算(交并差)

    • 对实体进行倒角,圆角等操作

    • 用偏移,壳,镂空等方式创建实体

    • 计算属性,例如:surface, volume, center of gravity, curvature

    • 计算几何 projection, interpolation, approximation

  • 模型的显示,和视图操作等这些可视化模块:

    • 3D 旋转

    • 缩放

    • 阴影

  • 一个应用程序框架设计:

    • 让没有几何信息的应用程序联合几何信息

    • 参数化模型

    • Java Application Desktop (JAD), a framework for creating your Graphical User Interfaces (GUI)

  • 数据交换模块提供了将OCC模型导入,导出为IGES和STEP等这些标准格式的功能。

Open CASCADE 模型库是Open CASCADE公司基于 CAS.CADE 技术 开发和销售的。它的设计是组件化的。 As such, they separate C++ classes for:

  • 定义数据结构 (geometric modeling, display 和 graphic selection)

  • 实现复杂算法

  • 提供应用程序接口 (APIs)

让有关系的或者相似的类在同一个包内可以防止类的冲突; C++ 类名的前面加上了包的名字做前缀。比如所有用来定义3D几何对象的类都在前面加上 Geom前缀。在 Geom中, 实现 Bezier surfaces 的类被命名为 BezierSurface, 它的全名是Geom_BezierSurface。

大的模块划分为6个,见下表

表 1: 类库模块与内容

基础类

Foundation Classes

模型数据

Modeling Data

建模算法

Modeling Algorithms

可视化

Visualization

数据交换

Data Exchange

程序框架

Application Framework

Kernel Classes

Math Utilities

核心类和数学库

2D Geometry

3D Geometry

Geometry Utilities

Topology

几何和拓扑

Construction of Primitives

Boolean Operations

Fillets and Chamfers

Offsets, Drafts Sewing and Sweeps

Features

Hidden Line Removal

Geometric Tools

Topological Tools

Services Common to 2D and 3D

2D Visualization

3D Visualization

IGES
STEP AP203 AP214

Extended data

exchange (XDE)

Data Framework

Data Storage

Application Desktop

当你安装完成后,你可以找到下面这些目录,这里简单介绍一下目录结构:

目录树描述

data - 这里面包含各种不同格式的模型文件。都是occ支持的格式。

doc –occ的文档。

ros/adm - occ团队工具,可以用来重新生成occ。

ros/adm/win32 - 包含Visual C++ 6.0., 7.1. 和 8.0.的工程文件, 用来生成occ的win32版本。

ros/adm/win64 - 包含 Visual C++ 8.0.工程,用来生成win平台64位版本。

ros/drv - 此文件夹包含WOK生成的源码文件。

ros/inc - 包含所有的occ头文件。

ros/src - 此文件夹包含occ源码,根据开发模块组织存放。

ros/win32 - 此文件夹包含了occ的可执行程序(dll)和lib,有debug,release。

Samples - 此文件夹包含了帮助文档中的标准例程。

tools - 包含OCAF 浏览器 和 MFC 应用程序向导工具;

wok – 此文件夹包含 WOK (Workshop Organization Kit) 工具包,用以组织大型项目和开发团队。

3rdparty - 此文件夹包含用以支持occ工作的第三方库(Java, QT and Tcl) 和例程。

uninstall - 卸载要用到的文件。

OpenCasCade 简介相关推荐

  1. html导航图片滚动条,CSS实现导航栏底部动态滚动条效果

    预习了CSS3部分的新知识,想着在不使用JS的情况下实现导航栏滚动条效果,如下: 实现滚动条效果,其实就是在 标签中让元素的宽度由0变化到100%,代码很简单,如下所示: CSS样式部分: ul.na ...

  2. OpenCASCADE:Inspector简介

    OpenCASCADE:Inspector简介 概述 入门 本博文介绍了如何使用 Inspector. 概述 Inspector 是一个基于 Qt 的库,提供交互式检查 OCAF 数据模型.OCCT ...

  3. OpenCASCADE:Open CASCADE Application Framework (OCAF)的简介

    OpenCASCADE:Open CASCADE Application Framework (OCAF)的简介 介绍 OCAF的目的 架构概览 应用 文档 属性 参考键模型 介绍 本手册解释了如何使 ...

  4. OpenCASCADE:扩展数据交换(XDE)的简介

    OpenCASCADE:扩展数据交换(XDE)的简介 基本术语 XDE组织 组件 验证属性 名称 颜色和图层 几何尺寸和公差 (GD&T) 剪裁平面 保存的视图 自定义笔记 扩展数据交换 (X ...

  5. OpenCASCADE:可视化简介

    OpenCASCADE:可视化简介 Open CASCADE 技术中的可视化基于以下分离: 一方面 – 存储要显示和选择的实体的几何形状和拓扑结构的数据,以及 另一方面--它的呈现(当一个对象在场景中 ...

  6. OpenCASCADE:拓扑 API之简介

    OpenCASCADE:拓扑 API之简介 Open CASCADE Technology ( OCCT )的拓扑 API包括以下六个包: BRepAlgoAPI BRepBuilderAPI BRe ...

  7. OpenCASCADE:Foundation Classes简介

    OpenCASCADE:Foundation Classes简介 OpenCASCADE:Foundation Classes简介 根类 字符串 集合 标准对象的集合 向量和矩阵 原始几何类型 常用数 ...

  8. OpenCASCADE:简介

    OpenCASCADE:简介 OpenCASCADE:简介 概述 基础班 建模数据 建模算法 网格 可视化 数据交换 形状愈合 应用框架 绘制测试线束 OpenCASCADE:简介 Open CASC ...

  9. OpenCasCade批处理简介

    一.前言 OpenCasCade库目录下面包含各种文件,对于编译批处理文件以前也用过很多次,老是忘记里面的一些问题,在此记录一下. 二.如何快速编译属于自己的开发版本 本次使用vs2017为例,其他版 ...

最新文章

  1. 计算机用电子表格验证方案,Excel电子表格的验证1.PDF
  2. 如何检查字符串是否包含Ruby中的子字符串?
  3. MYSQL中用正则筛选一定的数据
  4. Ionic Mac 环境配置
  5. 修改之前的myshell使之支持输入输出重定向
  6. 04_SpringCloud 整合Ribbon细粒度配置自定义
  7. 跨域-(jsonp cors)
  8. sqlserver 2005 快速插入数据
  9. 190520每日一句
  10. 【元胞自动机】基于matlab界面聚合元胞自动机模拟【含Matlab源码 2004期】
  11. 数组名与数组名前加取地址符
  12. 计算机右键管理删除,【win7右键菜单管理】右键菜单的设置及清除
  13. Python爬虫 | 2008-2018年各省专利统计数据
  14. 视觉技术的圣杯:光线追踪如何再现真实世界?
  15. 多个PDF怎么一起打印?教你两种打印方法
  16. Tomcat详细使用步骤
  17. h5跳转微信公众号文章,小程序,任意站跳转链接制作方法?
  18. 测试用例的设计方法(全)
  19. ios严格检验身份证号码有效性
  20. SQL之LEFT JOIN,EIGHT JOIN,INSERT JOIN的区别

热门文章

  1. html从右侧弹出面板,JavaScript实现网页右下角弹出窗口代码
  2. 图形界面 XI: 表格单元中的文本编辑框和组合框 (统合构建15)
  3. C语言实现mkfs.vfat
  4. 深圳大学《计算机论题》作业:大数据与人工智能技术对人类生活的影响
  5. linux下passwd命令设置修改用户密码
  6. 贵阳初中生计算机学校,贵州省2021公办的计算机学校
  7. 小白勿进!安卓版java游戏盒下载
  8. 电网经济和频率控制的多层,多时间尺度模型方法 Julia源代码,本文提出了一个覆盖所有控制时间尺度的多路动态网络模型 代码按照高水平文章复现
  9. KNN算法(一) KNN算法原理
  10. C++ 蓝桥杯之 字母图形