Font Size: a A A

Design And Implementation Of 3D Engine Combined With GIS

Posted on:2005-01-19Degree:MasterType:Thesis
Country:ChinaCandidate:Y GuanFull Text:PDF
GTID:2168360125950720Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
2-Dimension GIS emerged in 1960's.In the early period, the GIS was used for machine-aid cartography. With the development of GIS ,now it is applied to land-management, electric power, telecom, city pipe-network, water conservancy, fire control, traffic and city layout etc and come into being many embranchments. For instance, ComGIS is produced by GIS and component techniques. Since component was put forward, the whole software industry was influenced immensely. Of course component techniques affected the development of GIS. ComGIS becomes another trend for GIS. It offers the digital cartography system by kernel of GIS a fresh development method and idea. ComGIS is our selection. GIS combined with network technology leads to the development and application of WebGIS. GIS really become a tool for all people due to being extended by WWW. Users can explore WebGIS stations from internet node to cartography, get spacial data and do spacial search and spacial analyse. That People considered the Z-value of GIS as single variable brings 3-Dimension GIS. VRGIS is that combining GIS with Virtual Reality. VR is good at rebuilding the 3-Dimension scenes and interacts with the 3D models. VR can assist GIS handle local scenes.In the thesis our main works are designing and realizing a 3D engine of VR. A 3D engine can be simply considered as a program that can read 3D data files, obtain geometry information from data files, rebuild the models and render the models. It could allow users to move and observe freely.The realization of our 3D engine is mainly consisted of three contents: reading 3D data file, rebuilding 3D scenes and eyes moving in the virtual scenes.We read the data files that id software company brings forward the standard 3D model file(*.map) and the texture file(*.wad). The map file contains 3D model data, mostly are polygons of the scenes and texture name and still light texture name in the wad file. Some map files contain the fixed lights. The wad file is open data style. It contains all kinds of texture data. We may put our favorite images into the wad file and use them when making the map.In order to correctly draw a 3D scene, it is the most important to determine visible surface. In the initial period of development of computer graphics, Visible Surface Determination is called hidden surface algorithm. When the 3D scene are projected on the screen, two or more surfaces in the scene are projected in the same region of the screen. But there is only one surface that can be drawn in one frame of the screen. We should determine which one is visible in this frame. In the our 3D engine, the Visible Surface Determination we used is Binary Space Partitioning(BSP) tree. BSP-tree is put forward by Schumacker, developed and improved to be current version by Sutherland and Fuchs. The original idea for the creation of a BSP-tree is that you take a set of polygons that is part of a scene and divide them into smaller sets, where each subset is a convex set of polygons. That is that each polygon in this subset is in front of every other polygon in the same set. A 3D scene is transformed into a binary tree. In the tree each leaf is a convex set of polygons and each internal node stores the dividing polygon. The polygons of the left child node of the internal node are behind the dividing polygon of this internal node and ones of the right child node are in front of the dividing polygon. With inorder traversal, that we draw the whole tree is that we draw the 3D scene from behind to front. That ensures that the behind polygons are overlapped by the front polygons and complex 3D scenes can be correctly drawn.But BSP-tree is only determine the visible surfaces and gives us no reduction in number of polygons. In order to speed up the rendering of the scene we use PVS algorithm to remove the hidden surfaces. For each leaf in the BSP-tree a Potentially Visible Set(PVS) is created. This PVS is the set of leaves that is visible from this leaf. When a scene should be drawn, first the leaf where the camera is in is d...
Keywords/Search Tags:Implementation
PDF Full Text Request
Related items