源自于百度百科:实体造型---

三维模型特征表示方法:

计算机中表示三维形体的模型,按照几何特点进行分类,大体上可以分为三种:线框模型、表面模型和实体模型。如果按照表示物体的方法进行分类,实体模型基本上可以分为分解表示、构造表示CSG(Constructive Solid Geometry)和边界表示BREP(Boundary Representation)三大类。

常用的分解表示法有:四叉树、八叉树、多叉树、BSP树等等。

构造表示的主要方法:扫描表示、构造实体几何表示、特征和参数化表示。

  边界表示的典型代表是翼边结构。

 

  CSG建模法,一个物体被表示为一系列简单的基本物体(如立方体、圆柱体、圆锥体等)的布尔操作的结果,数据结构为树状结构。树叶为基本体素或变换矩阵,结点为运算,最上面的结点对应着被建模的物体;而BREP的一个物体被表示为许多曲面(例如面片,三角形,样条)粘合起来形成封闭的空间区域。

   

  BRep优点:

     1. 有较多的关于面、边、点及其相互关系的信息。 

  2. 有利于生成和绘制线框图、投影图,有利于计算几何特性,易于同二维绘图软件衔接和同曲面建模软件相关联。

BRep局限:

  由于它的核心信息是面,因而对几何物体的整体描述能力相对较差,无法提供关于实体生成过程的信息,也无法记录组成几何体的基本体素的元素的原始数据,同时描述物体所需信息量较多,边界表达法的表达形式不唯一。

 

  CSG优点:

  方法简洁,生成速度快,处理方便,无冗余信息,而且能够详细地记录构成实体的原始特征参数,甚至在必要时可修改体素参数或附加体素进行重新拼合。数据结构比较简单,数据量较小,修改比较容易,而且可以方便地转换成边界(Brep)表示。

 

  CSG局限:

  由于信息简单,这种数据结构无法存贮物体最终的详细信息,例如边界、顶点的信息等。由于CSG表示受体素的种类和对体素操作的种类的限制,使得它表示形体的覆盖域有较大的局限性,而且对形体的局部操作(例如,倒角等等)不易实现,显示CSG表示的结果形体时需要的间也比较长。

  到底使用哪种方法呢?取决于不同的视角,他们各自都有优缺点,可以从以下几点来考虑:

  1.现实 - 模型是否需要近似实际的材质密度,厚度和体积,或者是否需要显示真实的曲面细节

  2.精度 - 需要什么样的精度级别

 

  混合模式(Hybird Model)是建立在BRep与CSG的基础上,在同一系统中,将两者结合起来,共同表示实体的方法。以CSG法为系统外部模型,以B-Rep法为内部模型,CSG法适于做用户接口,而在计算机内部转化为B-Rep的数据模型。相当于在CSG树结构的结点上扩充边界法的数据结构。混合模式是在CSG基础上的逻辑扩展,起主导作用的是CSG结构,B-Rep的存在,减少了中间环节中的数学计算量,可以完整的表达物体的几何、拓扑信息,便于构造产品模型。

 

  还有空间划分表示法,利用四叉树或八叉数的数据结构来表示2D/3D的模型。

三维建模:方法之CSG与B-Rep比较的更多相关文章

  1. 基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发

                                 基于点云的3ds Max快速精细三维建模方法及系统的制作方法[技术领域][0001]本发明涉及数字城市三维建模领域,尤其涉及一种基于点云的3d ...

  2. Sketchup+ArcGIS三维建模与管理

    一.软件安装及其说明 1.需要安装的软件及其安装: 这份报告主要涉及到的有三个需要安装的软件ArcGIS9.3(或9.2) .Sketchup6.0和SketchUp6 ESRI 插件. ArcGIS ...

  3. 在Qt中使用AnyCAD三维建模控件

    AnyCAD C++ SDK专为Qt框架增加了AnyPlatformQt.lib模块,在Qt中使用AnyCAD三维建模控件变得十分简单. 下载 Qt高速下载:http://pan.baidu.com/ ...

  4. “2014年CityEngine三维建模与设计精英培训班”——全国巡回举办

    watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYXJjZ2lzX2FsbA==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...

  5. TurboCAD Pro for Mac(二维绘图和三维建模工具)破解版安装

    1.软件简介    TurboCAD Pro 是 macOS 系统上一款二维绘图和三维建模工具,具备强大的绘图和设计特性,加上强大的创建复杂的三维模型的工具,三维 OpenGL 的渲染,和超过 11, ...

  6. uvm_tlm——TLM1事务级建模方法(一)

    TLM(事务级建模方法,Transaction-level modeling)是一种高级的数字系统模型化方法,它将模型间的通信细节与函数单元或通信架构的细节分离开来.通信机制(如总线或者FIFO)被建 ...

  7. hive建模方法

    转自:https://www.jianshu.com/p/8378b80e4b21 概述数据仓库这个概念是由 Bill Inmon 所提出的,其功能是将组织通过联机事务处理(OLTP)所积累的大量的资 ...

  8. [Fundamental of Power Electronics]-PART II-7. 交流等效电路建模-7.2 基本交流建模方法

    7.2 基本交流建模方法 在本节中,PWM变换器的交流小信号模型导出步骤将被推导和解释.关键步骤是:(a)利用小纹波近似的动态版本,建立了与电感和电容波形的低频平均值相关的方程式,(b)平均方程的扰动 ...

  9. 【Microstation】三维建模基础及软件入门到精通实验教程目录

    @ 目录 1. 专栏简介 2. 专栏地址 3. 专栏目录 1. 专栏简介 MicroStation是一款非常不错的二维和三维设计软件,由奔特力(Bentley)工程软件系统有限公司开发的一款软件.在C ...

随机推荐

  1. css实现面包屑导航

    HTML代码: <div id="breadcrumb"> <ul class="crumbs"> <li class=" ...

  2. C# 实现串口发送数据(不用串口控件版)

    参考:https://blog.csdn.net/mannix_lei/article/details/79979432 https://www.cnblogs.com/ElijahZeng/p/76 ...

  3. jquery源码分析(二)——架构设计

    要学习一个库首先的理清它整体架构: 1.jQuery源码大致架构如下:(基于 jQuery 1.11 版本,共计8829行源码)(21,94)                定义了一些变量和函数jQu ...

  4. D2007从win7升级到win10下的莫名其妙问题。

    在win7下听说win10被推荐,于是升级到win10.结果使用d2007不能打开,出现莫名其妙的错误.把bin\bds.exe改名bds1.exe后居然可以启动了.一番折腾后,这把bds1.exe改 ...

  5. Java Web学习总结(19)——web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  6. oracle到mysql的导数据方式(适用于任意数据源之间的互导)

    http://www.wfuyu.com/Internet/19955.html 为了生产库释放部份资源, 需要将API模块迁移到mysql中,及需要导数据. 尝试了oracle to mysql工具 ...

  7. poj 3177&&3352 求边双联通分量,先求桥,然后求分量( 临界表代码)

    /*这道题是没有重边的,求加几条边构成双联通,求边联通分量,先求出桥然后缩点,成一个棵树 找叶子节点的个数*/ #include<stdio.h>//用容器写在3177这个题上会超内存,但 ...

  8. ExtJs之ExtJs.Model验证

    没有搞好,但知道意思和配置,并且好像4和3的没有兼容性语法,所以网上找了新语法才出来了点东东. <!DOCTYPE html> <html> <head> < ...

  9. POJ 1673

    可以证明O是三角形ABC的垂心. 作图辅助线,一个很重要的技巧是延长中线等中线. 可以证明三角形DNA全等于ABC.然后通过角度变换容易证明AQ垂直于BC. #include <iostream ...

  10. IA32 MMU paging初始化代码

    写了一段IA32 paging通用构造代码.有须要的.能够拿去 #define PDE_FLG_RW (1<<1) #define PDE_FLG_US (1<<2) #def ...