边界表示的数据结构
来源:互联网 发布:锦衣卫同知是什么官职 编辑:程序博客网 时间:2024/05/21 03:59
转自:
http://netclass.csu.edu.cn/NCourse/hep089/Chapter3/CG_Txt_3_039.htm
在实体造型技术的研究中,有不少边界表示的数据结构相继提出,比较著名的有半边数据结构、翼边数据结构、辐射边数据结构等。
其中翼边数据结构是在1972年,由美国斯坦福大学Baumgart作为多面体的表示模式而被提出来的,它是基于边表示的数据结构,如图3.2.11所示。它用指针记录了每一边的两个邻面(即左外环和右外环)、两个顶点、两侧各自相邻的两个邻边(即左上边、左下边、右上边和右下边),用这一数据结构表示多面体模型是完备的,但它不能表示带有精确曲面边界的实体。
图3.2.10 翼边数据结构
为了表示非正则形体,1986年,Weiler提出了辐射边(Radial Edge)数据结构,如图3.2.12所示。辐射边结构的形体模型由几何信息(Geometry)和拓扑信息(Topology)两部分组成。几何信息有面(face)、环(loop)、边(edge)和点(vertex),拓扑信息有模型(model)、
区域(region)、外壳(shell)、面引用(face use)、环引用(loop use)、边引用(edge use)和点引用(vertex use)。这里点是三维空间的一个位置,边可以是直线边或曲线边,边的端点可以重合。环是由首尾相接的一些边组成,而且最后一条边的终点与第一条边的起点重合;环也可以是一个孤立点。外壳是一些点、边、环、面的集合;外壳所含的面集有可能围成封闭的三维区域,从而构成一个实体;外壳还可以表示任意的一张曲面或若干个曲面构成的面组;外壳还可以是一条边或一个孤立点。外壳中的环和边有时被称为“线框环”和“线框边”,这是因为它们可以用于表示形体的线框图。区域由一组外壳组成,而模型由区域组成。图3.2.11是用辐射边数据结构表示的一个形体模型,注意其中实体、面、线是用统一的数据结构表示的。
图3.2.11 辐射边数据结构 图3.2.12 一个用辐射边结构表示的非正则形体模型
清华大学国家CAD工程中心开发的几何造型系统GEMS5.0中,采用的数据结构如图3.2.14所示。
图3.2.13 GEMS5.0的数据结构
该数据结构基于线框、表面、实体和特征统一表示,且具有以下特点:
采用自顶向下的设计思想。在形体的表示上,遵循了从大到小,分解表示的原则;
支持非流形形体的表示;
实体拓扑数据与几何数据双链表连接,存放紧凑;
能够支持特征造型。
- 边界表示的数据结构
- 数据结构:图的表示
- 数据结构:图的表示
- 基本的数据结构及其表示
- 数据结构,图的邻接矩阵表示
- 图的高效数据结构表示
- 图的高效数据结构表示
- 数据结构-图的邻接矩阵表示
- c++ 数据结构 多项式的表示
- 数据结构内存边界对齐的三条原则
- 数据结构内存边界对齐的三条原则
- 数据结构之顺序表的静态表示和动态表示
- 数据结构(16)顺序栈的表示和算法表示
- 模型表示的数据结构 Nonmanifold 和Manifold
- 单链表的表示和实现 - 数据结构
- 数据结构4:栈的表示和实现
- 数据结构学习 串的表示和实现
- 数据结构(java)---对象的内存表示
- 导入css的三种方式
- 代码时间换空间以及空间换时间
- hdu 5706 GirlCat【暴力DFS】
- View的工作原理(1)--Measure
- 【android】:android系统里面的系统时间获取
- 边界表示的数据结构
- Universal-Image-Loader(android图片缓存)
- rails入门
- 最小费用流模板
- maven学习(3):本地仓库和镜像仓库的修改
- C初级阶段练习题目(二)
- 常用的iOS第三方资源
- 怎么查看某个网站使用什么web服务器及架构
- Linux系统中‘dmesg’命令处理故障和收集系统信息的7种用法