The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. Vol. XXXVII. Part B5. Beijing 2008
708
Three are the main objects of the urban environment to
represent in 3D: relief, sidewalks and buildings. The altimetry
controls begin to validate the elements in an isolated way and
latter in the geographical context in which they are located.
The interaction and navigation is carried out when the
Modulo3D is activated, showing the work scene from different
perspectives and amplifying degrees, with a pleasant
visualization and a flexible displacement in the face of a
realism that includes lights and shadowing of the objects.
Indistinctly, views 2D and 3D are activated. Only with this
processing the observer's and he camera position change, by
using the Zoom, Pan tools and by Drawing elements, without
modifying the identification of the associated object.
It is in the view 3D where each object is three-dimensionally
modeled transforming it into a solid, out of:
• Determination of the height of the objects on the terrain.
• Orthogonal Projection to the surface.
• “Blending the solids 'objects with common faces.
3. GENERAL STRUCTURE OF THE MODULE
The general structure of the three-dimensional treatment module
is represented in the figure 2, indicating the main parts that
integrate it.
3.1 Classes structure
f- Code Comment Web Report
Solución | Proyecto
® M°d«io3o.Bsp Modulo3D Proyecto
Si Modulo3D.Edas
£1 Modulo3D
15 Modulo3D.Movement
B3 Modulo3D.Objects
IS Nodulo3D.Tools
a
Modulo 3D.Tools.Read3DPoii
Figure 2. Structure of the Modulo3D application
Modulo3D offers a library of classes (DLL) on the
platform .Net with the intention of facilitating the necessary
functions for the visualization and three-dimensional interaction
of the geographical information, thus being integrated to the
CartoSIG system in an easy and robust manner.
Classes:
• Library of Structures of data fEdas and BSP): Encapsulates
the classes representating the structures of data: Lists, Edges,
Balanced Tree (AVL), and Binary tree of Partition of the
Space (BSP), dedicated to improve the temporary costs of
the algorithms due to their high search and storage costs.
• Library Módulo 3D (Modulo 3D): Allows the exchange
through the functions:
o Selection: Activation of selection and consultation
mode.
o Pan: To travel on the scene.
o Zoomln and ZoomOut: Magnifying and Diminishing
o Textures : Defines the association patron of textures,
o Mesh: To visualize in wire mode,
o CreateWindow: Creates the window OPENGL 3D,
knowing the beginning width and height coordinates,
o LoadTextures: Loads the textures specified in the
textures.xml file.
o CreateWorld: Creates the world or scene to visualize,
to which the objects that conform it will be added,
o TerrainFromArray: It creates a terrain taking the
points from the list that conforms it.
o TerrainfromFile: It creates a terrain from the
information the " .SRG " file type contains the points
that conform it.
o PoligonFromArray: It creates a polygon out of the
points stored in a list, with its own color, keeping its
identification so as to interact with it in mode selection,
o CreateObserver: The observer is created, with its
window and world associated to carry out the
visualization.
o DestroyWindows: It closes the window created with
OPENGL 3D.
o Colors: Define the palette of colors when it is
visualizing without textures.
• Movement Library: Contains the Camera, This class allows
to carry out all the necessary functions of panning, zooming
as well as moving in a specific direction for looking at a
scene. The class Observer controls all the camera
movements and show the scene (Render). These movements
are defined by the user by means of the keyboard and the
mouse.
• Objects Library: three dimensional hierarchy of objects with
simple and compound objects (e.g., the world or scene that it
will visualize). The objects are the components of the
diverse layers in which the geographical information to
visualize is organized, that is to say, terrain, the layer relief
and polygons, of the layer areal with the information
corresponding to the sidewalks and buildings of the map in
question.
• Tools Library: Offers the common auxiliary tools for all the
types of classes of the system.
o IOSourceFile: Reads the information of the file with
extension SRG (System of Graphic Representation)
characteristic of the CartoSIG system;
o TexTureList: It loads the objects' textures defined;
o ThreePoint: It defines the points in three dimensions (x,
y. z);
o WinApi: It exports the functions of the libraries of
Win32 to capture the mouse and its current position,
and
o Utils: it encapsulates the data common to the
information visualizing 3D and it operates with the
graphic functions of OpenGL.
4. IDENTIFICATION OF OBJECTS AND ALGORITHMS
TO MODEL
CartoSIG manipulates the elements according to the classic
distribution adopted in the SIG: points, lines and shapes; to this
version the type of relief layers is added.
The modeling of the objects is divided in two groups attending
to their topologies: