蔡振锋,史云飞,邵长江,林黎明
(1.临沂市国土资源局,山东临沂276000;2.临沂大学资源环境学院,山东临沂276000)
基于TEN 的三维空间叠置分析
蔡振锋1,史云飞2,邵长江1,林黎明1
(1.临沂市国土资源局,山东临沂276000;2.临沂大学资源环境学院,山东临沂276000)
三维空间分析是3DGIS成熟的一个重要标志,也是当前业界的研究热点之一。叠置分析作为空间分析的一种最常用、最基本的功能,其实现具有重要的现实意义。通过探讨基于TEN的三维叠置分析,分别给出了点与体、线与体、面与体、体与体的叠置分析方法。该方法实现了将复杂的体先分解为TEN,然后再将各类实体与TEN进行叠置分析。
3DGIS;三维空间分析;叠置分析
GIS区别于其他信息系统的一个显著标志是其强大的空间分析[1]。在GIS众多的空间分析模块中,叠置分析是最常用也是最基本的功能之一。当前,绝大多数GIS软件所支持的叠置分析是基于二维平面实现的,基本方法是将不同图层相互叠置然后提取所需几何与属性信息。在三维空间中,由于几何与拓扑的复杂性,尚没有一种适于3DGIS的叠置分析。然而,随着3DGIS应用的深入,越来越多的需求如道路施工开挖、地铁规划等,都需要三维叠置分析,在这些应用背景下,探讨三维叠置分析具有重要的现实意义。TEN(Tetrahedronised Irregular Network)是不规则四面体格网的简称,它使用四面体作为体元表达空间实体[2-3]。TEN模型具有以下优点:1)可以描述复杂的空间实体,且同时具有体元模型与面元模型特性;2)构成简单,仅有点、线、面三种体元,便于快速现实[4-5]。当前,对TEN的研究主要集中在有限元领域,在GIS领域的研究还比较少,本文将探讨基于TEN的三维叠置分析。
三维空间叠置分析包括点与面、线与面、面与面、点与体、线与体、面与体以及体与体。面是一种空间平面多边形,点线、线面、面面之间的空间叠置分析类似于二维平面叠置分析,这里不再分析赘述。本文主要讨论点、线、面、体要素与体之间的空间叠置分析。因空间体形态复杂(凹凸、空洞等),需将体进行TEN剖分,采用四面体来表达它们之间的关系,实现间接空间叠置分析。
1.1 点体空间叠置分析
点体空间叠置分析可简单视为判断点体之间的空间相对位置关系。由于体形态的复杂性,本文首先对体进行约束Delaunay四面体剖分,剖分后生成的TEN拥有原来体的属性要素,这样将原来点体间的空间关系变为点与TEN的关系,进而转换为点与TEN中四面体的4个三角形之间空间关系的判断。三角形的方程为:
该方程中的x,y,z是空间中的任一点的三维坐标,通过Cramer规则确定三角面的空间特征常数A、B、C、D,建立三角面空间方程。
以每个四面体的内部为三角面的正方向,假设空间任意一点(x,y,z),代入三角面空间方程计算,Ax+By+Cz+D<0,则该空间任一点在平面的后方,位于四面体的外部;反之,则该空间任一点在平面的前方,位于四面体的内容。借助该点面位置关系理论,在进行点与四面体空间位置关系的判断时,基本步骤如下:
1)如图1所示,P为空间上的点,△IJK为平面M上的一个三角形,M对应的方程为F(s)=Ax+By+Cz+D,其中,s为三维空间中的点。将P点坐标带入该方程,若F(P)=0,则P在M上,但不一定在三角形内部。采用面积法继续判断:若P与三角形的点构成的3个新三角形面积的和等于△IJK的面积,那么P在给定三角形的内部或者恰好在边界上;
2)若F(P)≠0,P不在M上,需测试P在M的具体位置关系。使用四面体的那个不在M面上的L点继续测试,若F(P)×F(L)<0,那么P点与L点位于M面的两侧,得出四面体IJKL不包含P;否则,进行第3步的测试。
3)在四面体IJKL中再取一个三角形△ILK,进一步判断P与△ILK的关系,判断方法使用上述的第1和第2步骤。
4)对四面体IJKL剩余的三角形重复上述的步骤。若P点每次与检测点位于被测试三角形所在平面的同一侧,那么四面体IJKL包含点P,或P落入IJKL的内部,其中检测点为IJKL中不在当前测试三角形上的点。
图1 点与四面体的叠置分析
1.2 线体空间叠置分析
线体空间叠置分析的基本原理是线段与给定的体的空间位置关系判断。一条空间三维线可能与多个体相交,体对象把空间线分割成多段空间线,位于体对象内的空间线段获取该体对象的空间属性信息。空间叠置分析后空间线具有双重属性信息,包括空间线本身属性和体属性,可实现线、体空间属性交会查询分析。
对象体经四面体剖分后,线体空间叠置分析转换为线与四面体的空间叠置分析。经过线体空间叠置分析计算后,所有与体相交的空间线都获取原来体的属性。由于四面体具有4个三角形,线与四面体的空间叠置分析实质变为线与三角形空间关系的测试。以图2为例进行说明。
1)基于MBR的边界盒测试。取被测试的空间图元的极值:(xmin,ymin,zmin)、(xmax,ymax,zmax)作为对角点构建MBR。若△IJK的MBR与PQ的MBR不相交,那么三角形△IJK与被测试的线段PQ不相交。否则,进行下一步检测。
2)利用△IJK的3个顶点求其所在平面M的方程ax+by+cz+d=0。并设V是M上的一点,其坐标为(0,0,z),代入M可得V为的法向量为若则PQ平行于或在△IJK所在的平面上。进一步测试,将P带入上述方程,若axp+byp+czp+d≠0,则PQ∥△IJK,否则PQ在△IJK的平面上[6]。
图2 线与面的判交
将W带入式(2)得:
由式(4)可解出t,将t带入式(3)可得W。
4)使用上述的面积法测试W与△IJK的关系(内部或外部)。利用上述步骤,可以测试出线段与三角形的空间关系。
5)再在四面体中取三角形做上述的测试,可获得线段与四面体的关系,进一步可获得与整个体的关系。
1.3 面体空间叠置分析
面体空间叠置分析从几何意义上来讲是面与体边界的空间位置关系分析,在空间中面被体边界分为若干个子面,体内的子面获取了该空间体的属性信息。基于面体空间叠置分析,可以快速获取与空得:间面相交的体对象和位于体内的空间子面。但因空间面或体具有复杂的空间形态,如面或体带空间空洞等,因此,面体空间叠置分析运算量庞大、算法复杂。本文为了更为准确、快速地判断面与体的空间关系,将面进行三角剖分和将体进行四面体剖分,基于剖分三角形和剖分四面体进行面体空间叠置分析。
经过面三角化和体四面体剖分后,面体空间叠置分析转换三角形与四面体的空间关系判定。而四面体又是由4个三角面组成的,进而又可将面体空间叠置分析转换为三角面与三角面之间的空间叠置分析。为了进一步简化运算关系,把三角面看作是由3条线段组成的,把面体空间叠置分析全面转换为线段与三角面之间关系的运算。结合前面论述的线与面之间的运算关系,实现面体空间叠置分析。
1.4 体体空间叠置分析
体体空间叠置分析是为了将2组三维空间体进行集成,获取叠加区域的信息。与二维多边形之间的叠置分析类似,三维体与体之间的空间叠置也可以分为叠合、相交等。叠合分析以输入体的边界为约束,保存约束边界内的输入体与叠置体的公共部分,输入体获取了所叠加体的属性。相交分析是2个体叠加后,相交的公共部分即交集部分被输出,且该交集的属性继承了2个体原有的属性。同样,对体进行四面体网剖分后,体与体之间的叠置分析转变为TEN之间的空间关系的判定,进一步转换为四面体之间的判交运算以及三角形之间的判交运算。体与体经叠加后,新体的空间形态由参与求交运算的2个体所进行的布尔运算(并、交和叠合)决定[6]。新体的非空间属性继承了参与运算体对象的非空间属性。
三维叠置分析是三维GIS的一项重要功能,也是GIS是否成熟的标志,探讨三维叠置分析对于3D GIS的发展具有重要意义。然而,采用直接的方式进行三维对象之间的叠置分析是困难的,甚至在当前技术条件下是不成熟的。本文探讨了一种变通的方式进行三维叠置分析,通过将复杂的体先剖分为TEN,然后再将各类三维要素与TEN进行叠置分析,来间接地判断三维要素与体的空间关系。该方法在理论上具有一定的可行性,在今后的工作中,将进一步实现这个方法,来考察它的效率。
[1]张文艺.GIS缓冲区和叠置分析[D].长沙:中南大学,2007.
[2]Pilouk M,Tempfli K,Molanaar M A.Tetrahedronbased 3Dvector data model for geoinformation[J].Advanced geographic data modeling,1994(40):129-140.
[3]李德仁,李清泉.一种三维GIS混合数据结构研究[J].测绘学报,1997,26(2):128-133.
[4]王润怀.矿山地质对象三维数据模型研究[D].西安:西南交通大学,2007.
[5]史云飞.三维地籍空间数据模型及其关键技术研究[D].武汉:武汉大学,2009.
[6]史云飞,张玲玲,李霖.混合3维地籍空间数据模型[J].遥感学报,2013,17(2):327-334.
3D Spacial Overlap Analysis Based on TEN
CAI Zhen-feng,etc.
(Linyi Bureau or Land Resources,Linyi Shandong276000,China)
3Dspatial analysis is an important sign for the maturity of 3DGIS,and it is also a hot in the current industry overlap analys as the most commonly used and the most basic function,and its implementation has important practical significance.The paper discusses 3Doverlap analysis based on TEN and proposes the overlap analysis method by point and body,line and body,surface and body,body and body.The method decomposes complex body into TEN firstly,then carries out overlap analysis between various features with body,which has certain innovation.
3DGIS;3Dspatial analysis;overlap analysis
TP311.12∶P208.2
A
1009-8984(2016)02-0089-03
10.3969/j.issn.1009-8984.2016.02.022
2016-03-30
国家自然科学基金资助项目(41201407)
蔡振锋(1982-),男(汉),山东费县,硕士主要研究三维GIS理论和应用。