Modelling 3D spatial objects in a geo-DBMS using a 3D primitive
There is a growing interest in modelling the world in three dimensions, both in applications and in science. At the same time, geographical information systems are changing into integrated architecture in which administrative and spatial data are maintained in one environment. It is for this reason that mainstream Data Base Management Systems (DBMSs) have implemented spatial data types according to the Simple Feature Specifications for SQL, described by the OpenGeospatial Consortium. However, these specifications are 2D, as indeed are the implementations in DBMSs. At the Section GIS Technology of TU Delft, research has been carried out in which a 3D primitive was implemented in a DBMS (Oracle Spatial). To explore the possibilities and complications, a fairly simple 3D primitive was chosen to start with: a polyhedron. In the future the study will be extended with more complex primitives, the ultimate aim being to build 3D models with features closer to the real world. Besides the data structure, a validation function was developed to check the geometric accuracy of the data. Rules for validation were established and translated into prototype implementations with the aid of literature. In order to manipulate the data, a list of useful 3D functions was specified. Most of these were translated into algorithms, which were implemented in the DBMS. The algorithms for these functions were obtained from the relevant literature. The research also comprised a comparative performance test on spatial indexing in 2D and 3D, using an R-tree. Finally, existing software was used to visualize 3D objects structured with the implemented 3D primitive. This research is a first attempt to implement a true 3D primitive in a DBMS. Future research will focus on extending and improving the implementations and on optimizing maintenance and query of 3D objects in DBMSs.
spatial data types spatial dbms 3d data structures 3d spatial functions 3d validation