Chapter 6 Utilization of Domain Extendable 3D City Models
6.1 Conceptual Considerations
6.1.1 Problems of the traditional System Solutions
Nowadays, a number of open source and commercial application systems were brought to the market, which support working with semantic 3D city models for a range of application scenarios in many cities (cf. Hildebrandt 2014). Most of these applications are constructed based on a so-called three-tier architecture (cf. Figure 101) which utilizes a data tier at the lowest level for dealing with the storage of 3D city models in a spatially-enhanced database management system. The communication between client application of the presentation tier and the data tier is realized through an application tier also called middle tier which contains the main business logic and various functionalities like session management for controlling and performing the complex tasks including the query, analysis, as well as CRUD (create, read, update, and delete) operations on the stored data contents. To minimize the complexity of implementing such Three-tier architecture, a number of existing web application frameworks such as Spring and Django etc. are available for the development and deployment of the entire system through a set of standard templates and libraries. Moreover, the application tier can be implemented as a web service according to the standard web interfaces i.e. Web Feature Service (WFS) and Web Processing Service (WFS) which allow to access the application tier via a URL in a way of sending a standardized HTTP request to the business logic for performing the CRUD operations and analysis procedures and receiving back a response containing the respective results.
Figure 101: Traditional Tree-tier architecture of a 3D Web GIS application (cf. Westra 2010)
This architecture approach works well for most application cases but has certain limitations regarding two important aspects. First, most application users who are not authorized to have write-access to the application tier and data tier are restricted from modifying the data
Technische Universität München Lehrstuhl für Geoinformatik
45 Graphical User Interface
URL Mapper JavaScript Library
Business Logic Application Server Session Management Database Server Presentation Tier Spatial Database Application Tier Data Tier
contents stored in the central database. This is because, the stored 3D city models are the important information basis for performing the application logic and, hence, must be kept consistent and can only be altered by advanced users having administration privilege. However, in some application cases, the normal users may have to make some changes and updates to the 3D city models which shall be temporarily stored in a form like a “pull
request” which can be checked and validated by the application administrators and merged
back to the central database in a later stage. Second, depending on the application scenarios, users may want to add some new data and functionalities to the application system. However, the application tier is usually implemented as a behind-the-scenes module which is difficult to be modified or redeployed by the users due to the high system complexity in terms of the hardware and software requirements. Considering the two above-mentioned limitations, a new architecture approach is needed to ease the utilization of 3D city models for broader user groups.
6.1.2 A new Multi-Level System Architecture
In the context of this dissertation thesis, a new multi-level system has been developed which provides a novel conceptual solution for constructing a scalable 3D GIS environment and has also been successfully implemented using the existing software tools and 3D city model standard. The entire structure of this system can be subdivided into three logical tiers namely the ‘information backbone’, the ‘application level’, and the ‘end user level’ shown in Figure 102 (cf. Yao et al. 2014).
Figure 102: Three-tier system architecture (cf. Yao et al. 2014)
At the lowermost level (Information backbone), the semantic 3D city model is created which contains the city level information from different sources such as CityGML, Industry Foundation Classes (IFC), ESRI shapefiles, CAD files and others. The city information from
GUI Extract from central Database Cal c ula tion E ngi ne
App 1: Decision support for investment in renovation A p p li cati o n L ev el Housing Company End U se rs
Urban Analytics Toolkit
Noise Propagation
Simulation Flooding Simulation
… many more modules Energy Demand Calculation 3D City Model + ADEs Common Urban Information Model In fo rmati o n B ackb o n e & Si mu lati o n I n teg rati o n GUI Cal c ula tion E ngine
App 3: Decision support for urban Planning Extract from central Database Urban Planner GUI Cal c ula tion E ngine Extract from central Database Energy Planner
App 2: Reporting of renewable energy production possibilities
different sources can be integrated into the common data model and exchange format according to the CityGML standard along with its ADE mechanisms. This information model shall be imported into a spatial database allowing for efficient storage and management of the large 3D city models which can be efficiently accessed by different application domains. In addition, an urban analytics toolkit can also be invoked, which is a bundle of complex functional modules for performing the time expensive computations i.e. the derivation of key indicator values, the attribute aggregation calculations, and the morphometric analysis etc. which are essential in many different application fields like urban planning, environmental and training simulations, disaster management, and energy assessment. Moreover, since all these toolkits share the same data basis, multiple modules can be used together to complete more complex tasks.
The Application Level acting as a “bridge” between the End Users level and the Information
Backbone is introduced which shall provide easy-to-use applications to the specific end-users
from different domains. Since most users from the End Users level usually have very little GIS expertise and have nearly no knowledge of the complex 3D city models, they need only intuitive tools that allow them to access the relevant part of the semantic 3D city models and to perform some certain ad-hoc data modifications, simulations and calculations. Thus, all applications at this Application Level must be designed in such a way that they follow the principle of the "App concept", which has been established in recent years in the context of smartphones and tablet PCs. This principle requires that for specific users or user groups, each application should have a very limited range of functions in order to be relatively easy to learn and intuitive to use. In addition, each application shall also be portable and can be easily modified, recovered, or even cloned to a new one.
In order to create an application in compliance with the “App concept”, a number of simplification procedures are needed to minimize the complexity of the application. First, it is important to make clear about which functions provided by the urban analytics toolkit are required by the end users and what information of the original 3D city model are relevant for the application, because the required data and analysis functions may vary depending on the application and target users of different application domains. In the subsequent step, the relevant data contents shall be extracted from the central database according to different filter criteria such as spatial bounding box, feature classes, and level of details etc. The corresponding spatial content can be exported as tiled 3D visualization models and pre-cached at the server side, whereas the thematic information can be mapped onto a simple table structure allowing for easy data access and to realize the logical link with the generated 3D visualization models. In addition, a calculation engine serving as a light-weight version of the urban analytics toolkit shall be embedded into the application for performing the required application functions. Moreover, the application level shall provide a user-friendly graphical interface that helps users to explore the exported spatial and thematic information as well as to operate the calculation engine to accomplish the application-specific simulation and analysis tasks.
During the runtime of the application, the updated data content as well as the results of the calculations and simulations are temporarily stored at the application level. Therefore, it is very important to be able to import these up-to-date data back into the central database. The application administrator or project manager must be able to determine what information
contents have been changed, added, or deleted compared to the current database. After confirming all the changes, a bulk process for updating the 3D city models in the central database can be performed and the updated 3D city models can be used by further applications and users of different domains.