Photographic documentation processing, building 3D model and interfacing with spatial data - 3D information system of ancient monument Charles Bridge
The first impulse to create an application solving interconnection of spatial computer models with non-spatial information emerged in our laboratory of photogrammetry in summer 2003 in reflection to the onset of stonework of Charles Bridge.
The actual development of the system started within the year 2004 and was named silentCube #1. The system was developed with the help of Borland Delphi 2005 programming tool, OpenGL graphic library and many other supporting components (interface with databases, XML technology support, libraries for extended 2D visualization, …).
At present, the first version of the system is already fully functional and was employed to process a part of Charles Bridge including interconnection with non-spatial data – data obtained in collaboration with GET, ltd.  and Institute of geochemistry, mineralogy and mineral resources , Faculty of Science, Charles University in Prague (geological survey of Charles Bridge).
Platform and adopted technologies
The main programming application of the information system is developed for system Windows 32. For reliable performance the system requires standard PC with operating system Windows 98 a compatible, graphic card with OpenGL support and network facilities to connect to remote source of data.
Structure of saved data
Most simple classification of processed data considers spatial and non-spatial data. For both types of data the system offers a specific option for their storage. The following two options are currently available:
Mutual interconnection of spatial and non-spatial data is secured with the help of an unambiguous, unique identifier, which labels each object of the 3D model. This identifier is generated automatically when creating the 3D model. However, each identifier can be easily adjusted by the user – e.g. Figure  shows a 3D object of a stone in an interfaced .XML file having an unambiguous identifier (id) KMO11A200115, which is subsequently used to assign this object to a 3D object within the model.
spatial data - for this type of data the system saves information into its own binary format denoted .scl. In such a case the data can be saved directly into a file on a local disk or as meta-data into a single record of the interfaced database table. To import or export external data the system exploits standard .dxf format.
non-spatial data - can be further grouped into text data, pictures, sounds, video and other non-specified (arbitrary data processed by computer). The last version of the system allows for processing all types of data stored on a local disk, only text data can be saved also into a database table, where always one object in the 3D model represents one record in the database table. XML format is used to store data on a local disk.
The need for presenting the 3D model in the form of printout the system contains an integrated tool for creating presentations. An unlimited number of presentations can be created within a single document; each presentation may subsequently contain an unlimited number of sheets.
Each sheet allows for entering texts, geometrical objects and 2D presentations of spatial objects (these are automatically created from 3D objects).
Selecting objects according to criteria
One of the main objectives of the project was to create a simple tool to filter individual objects within the entire 3D model according to various criteria. Filtering can be applied to both geometrical properties (e.g. object greater than 1 m) nd data properties of individual objects (properties saved into an external XML file or database).
The assumed selection can be simply saved and assigned a color and type of pattern. These stored selections can be later reloaded. Several selections can be displayed on a given model at any time. Providing a certain object is a part of more selections it will be colored based on the first found selection.
Various tools enabling export of data into external formats or preparing printouts constitute an important part of the entire system. The main tools are:
3d drawings an arbitrary part of 3D model can be exported, e.g. one may choose to export a part of the model defined by selection, .dxf can be used as an external format
text data properties of selected objects can be exported, exported data can be saved into .XML format and into .CSV
text file (individual records separated by semicolon),
printouts prepared presentations and a simple list of selected objects can be printed out
Examples of processed results
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see www.gnu.org/licenses.
The Initial Developer of the Original Code is Jiri Preisler, lfgm.fsv.cvut.cz, Copyright (C) 2003-2012.