3D city model
A 3D city model is digital model of urban areas that represent terrain surfaces, sites, buildings, vegetation, infrastructure and landscape elements in three-dimensional scale as well as related objects (e.g., city furniture) belonging to urban areas. Their components are described and represented by corresponding two- and three-dimensional spatial data and geo-referenced data. 3D city models support presentation, exploration, analysis, and management tasks in a large number of different application domains. In particular, 3D city models allow "for visually integrating heterogeneous geoinformation within a single framework and, therefore, create and manage complex urban information spaces ." Storage. To store 3D city models, both file-based and database approaches are used. There is no single, unique representation schema due to the heterogeneity and diversity of 3d city model contents. Encoding of components. The Components of 3D city models are encoded by common file and exchange formats for 2D raster-based GIS data (e.g., GeoTIFF), 2D vector-based GIS data (e.g., AutoCAD DXF), 3D models (e.g., .3DS, .OBJ), and 3D scenes (e.g., Collada, Keyhole Markup Language) such as supported by CAD, GIS, and computer graphics tools and systems. All components of a 3D city model have to be  transformed into a common geographic coordinate system. Databases. A database for 3D city models stores its components in a hierarchically structured, multi-scale way, which allows for a stable and reliable data management and facilitates complex GIS modeling and analysis tasks. For example, the 3D City Database is a free 3D geo database to store, represent, and manage virtual 3D city models on top of a standard spatial relational database. A database is required if 3D city models have to be continuously managed. 3D city model databases form a key element in 3D spatial data infrastructures that require support for  storing, managing, maintenance, and distribution of 3D city model contents. Their implementation requires support of a multitude of formats (e.g., based on FME multi formats). As common application, geodata download portals can be set up for 3D city model contents (e.g., virtualcityWarehouse). CityGML. The Open Geospatial Consortium (OGC) defines an explicit XML-based exchange format for 3D city models, CityGML, which supports not only geometric descriptions of 3D city model components but also the specification of semantics and topology information. CityJSON. CityJSON is a JSON-based format for storing 3D city models. It mostly follows the CityGML data model, but  aims to be developer- and user-friendly by avoiding most of the complexities of its usual GML encoding. Due to its simple encoding and the use of JSON, it is also suitable for web applications. Construction. Level of detail. 3D city models are typically constructed at various levels of detail (LOD) to provide notions of multiple resolutions and at different levels of abstraction. Other metrics such as the level of spatio-semantic coherence and resolution of the texture can be considered a part of the LOD. For example, CityGML defines five LODs for building models: There exist also approaches to  generalize a given detailed 3D city model by means of automated generalization. For example, a hierarchical road network (e.g., OpenStreetMap) can be used to group 3D city model components into "cells"; each cell is abstracted by aggregating and merging contained components. GIS data. GIS data provide the base information to build a 3D city model such as by digital terrain models, road networks, land use maps, and related geo-referenced data. GIS data also includes cadastral data that can be converted into simple 3D models as, for example, in the case of extruded building footprints. Core components of 3D city  models form digital terrain models (DTM) represented, for example, by TINs or grids. CAD data. Typical sources of data for 3D city model also include CAD models of buildings, sites, and infrastructure elements. They provide a high level of detail, possible not required by 3D city model applications, but can be incorporated either by exporting their geometry or as encapsulated objects. BIM data. Building information models represent another category of geo-spatial data that can be integrated into a 3D city model providing the highest level of detail for building components. Integration at visualization level. Complex 3D city models typically  are based on different sources of geodata such as geodata from GIS, building and site models from CAD and BIM. It is one of their core properties to establish a common reference frame for heterogeneous geo-spatial and geo-referenced data, i.e., the data need not to be merged or fused based on one common data model or schema. The integration is possible by sharing a common geo-coordinate system at the visualization level. Building reconstruction. The simplest form of building model construction consist in extruding the footprint polygons of buildings, e.g., taken from the cadaster, by pre-compute average  heights. In practice, 3D models of buildings of urban regions are generated based on capturing and analyzing 3D point clouds (e.g., sampled by terrestrial or aerial laser scanning) or by photogrammetric approaches. To achieve a high percentage of geometrically and topologically correct 3D building models, digital terrain surfaces and 2D footprint polygons are required by automated building reconstruction tools such as BREC. One key challenge is to find building parts with their corresponding roof geometry. "Since fully automatic image understanding is very hard to solve, semi-automatic components are usually required to at least support the recognition of very complex  buildings by a human operator." Statistical approaches are common for roof reconstruction based on airborne laser scanning point clouds. Fully automated processes exist to generate LOD1 and LOD2 building models for large regions. For example, the Bavarian Office for Surveying and Spatial Information is responsible for about 8 million building models at LOD1 and LOD2. Visualization. The visualization of 3D city models represents a core functionality required for interactive applications and systems based on 3D city models. Real-time rendering. Providing high quality visualization of massive 3D city models in a scalable, fast, and cost efficient manner is still a  challenging task due to the complexity in terms of 3D geometry and textures of 3D city models. Real-time rendering provides a large number of specialized 3D rendering techniques for 3D city models. Examples of specialized real-time 3D rendering include: Real-time rendering algorithms and data structures are listed by the virtual terrain project. Service-based rendering. Service-oriented architectures (SOA) for visualizing 3D city models offer a separation of concerns into management and rendering and their interactive provision by client applications. For SOA-based approaches, 3D portrayal services are required, whose main functionality represents the portrayal in the  sense of 3D rendering and visualization. SOA-based approaches can be distinguished into two main categories, currently discussed in the Open Geospatial Consortium: Map-based visualization. A map-based technique, the "smart map" approach, aims at providing "massive, virtual 3D city models on different platforms namely web browsers, smartphones or tablets, by means of an interactive map assembled from artificial oblique image tiles." The map tiles are synthesized by an automatic 3D rendering process of the 3D city model; the map tiles, generated for different levels-of-detail, are stored on the server. This way, the 3D rendering is completely  performed on the server's side, simplifying access and usage of 3D city models. The 3D rendering process can apply advanced rendering techniques (e.g., global illumination and shadow calculation, illustrative rendering), but does not require client devices to have advanced 3D graphics hardware. Most importantly, the map-based approach allows for distributing and using complex 3D city models with having to stream the underlying data to client devices - only the pre-generated map tiles are sent. This way, "(a) The complexity of the 3D city model data is decoupled from data transfer complexity (b) the implementation of client applications is  simplified significantly as 3D rendering is encapsulated on server side (c) 3D city models can be easily deployed for and used by a large number of concurrent users, leading to a high degree of scalability of the overall approach." Applications. 3D city models can be used for a multitude of purposes in a growing number of different application domains. Examples: