Link Search Menu Expand Document


Table of contents

  1. Cities converted from CityGML
  2. Simple geometries
  3. Generating automatically your own CityJSON dataset
  4. Every buildings (~10M) in the Netherlands
  5. The topography of the Netherlands in 3D
  6. All USA buildings
  7. Paid datasets $$$

Cities converted from CityGML

dataset CityGML file (size) CityJSON file (size) textures validity details
Den Haag [GML] (23MB) [JSON] (2.9MB) none 62% features valid 'Tile 01', Buildings (in LoD2) and Terrain are merged
Montréal [GML] (56MB) [JSON] (5.4MB) none 86% buildings valid Tile 'VM05'. Buildings in LoD2
New York [GML] (590MB) [JSON] (105MB) none 99.9% buildings are valid (only 21 are invalid) Tile 'DA13'. Buildings in LoD2
Railway [GML] (45MB) [JSON] (4.3MB) [ZIP] 74% features valid CityGML demo. Buildings, Railway, Terrain, Vegetation (with Implicit Geometries), Water, Tunnels
Rotterdam [GML] (16.0MB) [JSON] (2.6MB) [ZIP] 76% buildings valid Neighbourhood 'Delfshaven'. Buildings in LoD2
Vienna [GML] (37MB) [JSON] (5.3MB) none 98.5% buildings valid Buildings in LoD2
Zürich [GML] (3030MB) [JSON] (292.9MB) none 76% buildings valid Buildings in LoD2

It should be observed that on average CityJSON compresses ~6X a CityGML, and that without any loss of information (see details).

We performed the geometric validation with val3dity and report the overall result in the column ‘validity’. To understand the errors, we suggest validating the files (how to do this) yourself.

Please be aware that we simply converted the datasets as they are (with citygml-tools). Datasets contain errors.

Simple geometries

  • cube.json – a unit cube
  • tetra.json – a simple tetrahedron
  • torus.json – a unit cube with a genus of one
  • msol.json – one MultiSolid: 2 unit cubes that are not adjacent
  • csol.json – one CompositeSolid: 2 adjacent unit cubes
  • twocube.json – one object as two geometries: 2 unit cubes adjacent (sharing a face)

For different City Objects (buildings, trees, roads, etc.) and different geometries, see the latest CityJSON specifications, and to understand how the hierarchical brackets work, see this guide.

Generating automatically your own CityJSON dataset

It is possible to generate automatically a 3D city model in CityJSON with 3dfier, just follow that simple tutorial.

Every buildings (~10M) in the Netherlands

Every building in the Netherlands, automatically reconstructed. Each building is available in 3 levels-of-details: LoD1.2, LoD1.3, and LoD2.2.

The topography of the Netherlands in 3D

Every building (in LoD1.2), every canals, every road, every bridge, in 3D. In CityJSON.

PDOK 3D Topografie

Please be aware that the tiles are very big, and they will most likely bring ninja or QGIS to their knees… The solution for the time being is to use a computer with 16GB+ of RAM, and use cjio to extract only the buildings for instance.

All USA buildings

The project Open City Model has converted all buildings in the USA to LoD1 buildings and offers them in CityJSON.

Watch out: the coordinates are in (lat, long, meters), which means that there’s a mix of units (degrees and meters) and several viewers and processing software do not like this very much…

  • offers an online service where you can download custom areas for a few cities. Areas up to 0.3km² are free of charge.