An error occurred while loading the file. Please try again.
-
Santhanavanich authored14519e86
<!doctype html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<title>Web-based Visualization of the 3D City Models</title>
<style>
table {
border: 0px;
padding: 0px;
margin: 0px;
border-collapse: collapse;
}
td {
border-right: 1px solid black;
padding: 2px 2px 5px 2px;
margin: 0px;
}
th {
border-bottom: 1px solid black;
padding: 5px;
margin: 0px;
}
tr {
padding: 0px;
margin: 0px;
}
</style>
</head>
<body>
<div style="margin:20px; padding:30px">
<h1>Web-based Visualization of the 3D City Models</h1>
<h2>Part 1: Cesium Digital Globe and 3D Tiles</h2>
<p>This article is intended to give a brief introduction to the web-based 3D visualization of 3D city
models. For this purpose, the creation of a 3D visualization of Wermelskirchen with the digital globe
Cesium is created using an example. Why Wermelskirchen and not New York? The 3D building model of
Wermelskirchen is also freely available, and it is somewhat more manageable than New York. According to
the
motto “Think big, start small”, a workflow is presented step by step that shows how to create a
visualization in Cesium based on a 3D building model in CityGML. For this purpose, the CityGML database
is
converted into the 3D Tiles data format, which has been optimized for web-based 3D visualization and
displayed
in Cesium. The first step is to show how the visualization is done in Cesium. It is assumed that
the
Wermelskirchen 3D building model is already available as 3D tiles. Then you can see something. In
the
second step, the conversion from CityGML to 3D Tiles is explained.</p>
<div id="attachment_2304" style="width: 625px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen.png"><img
aria-describedby="caption-attachment-2304" class="wp-image-2304 "
src="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-1024x486.png"
alt="Visualisierung 3D-Gebäudemodell Wermelskirchen " width="615" height="292"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-1024x486.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-300x142.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen.png 1474w"
sizes="(max-width: 615px) 100vw, 615px"></a>
<p id="caption-attachment-2304" class="wp-caption-text">Visualization of the 3D building model in
Wermelskirchen. Data source: GeoBasis NRW, 3D building model LoD2, <a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a></p>
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
</div>
<a href="https://www.opengeodata.nrw.de/produkte/geobasis/3dg/"><button class="btn btn-primary">The NRW CityGML Data Set</button></a> <br>
<p> </p>
<h3>The Digital Globe Cesium</h3>
<p>The Cesium digital globe can be downloaded from https://cesiumjs.org/downloads/. It should be run on its own
web server. Basically, there are no restrictions as to which web server is used. In the Cesium installation
guide (https://cesiumjs.org/tutorials/cesium-up-and-running/) Node.js is used. In the example shown here, Apache
HTTP Server is used as the webserver. No matter which web server is used, after successful installation the
digital globe with the usual "Hello World" should be visible.</p>
<div id="attachment_2309" style="width: 623px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/Hello-World-Cesium.png"><img
aria-describedby="caption-attachment-2309" class=" wp-image-2309"
src="https://www.coors-online.de/wp-content/uploads/2018/05/Hello-World-Cesium-1024x653.png"
alt="Cesium Hello World" width="613" height="391"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/Hello-World-Cesium-1024x653.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/Hello-World-Cesium-300x191.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/Hello-World-Cesium.png 1557w"
sizes="(max-width: 613px) 100vw, 613px"></a>
<p id="caption-attachment-2309" class="wp-caption-text">Cesium Hello World, (<a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE)</a></p>
</div>
<p> </p>
<h2>3D Tiles</h2>
<p>3D Tiles is a hierarchically structured scene graph in which a large 3D model is divided into tiles in order
to
realize a quick display in the web browser. The aim is to transfer a first simplified model to the web
browser
and display it as quickly as possible. The scene is shown in more detail with user interactions such as
zooming
in by reloading further tiles. A quadtree data structure is ideal for creating the tiles in 3D building
models.
An area is regularly divided into 4 quadrants, which are named according to the cardinal directions NE, SE,
SW,
and NW.</p>
<a href="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-3.png"><img class=" wp-image-2316"
src="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-3.png"
alt="Ein Quadtree unterteilt das Gebiet regelmässig in die vier Quadranten NE, SE, NW, SW " width="670"
height="668"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-3.png 843w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-3-150x150.png 150w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-3-300x300.png 300w"
sizes="(max-width: 670px) 100vw, 670px"></a>
<p>Each square is further subdivided according to the same pattern. This creates a hierarchical tile
structure
that can also be found in the files of the 3D scene.</p>
<div id="attachment_2317" style="width: 667px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-4.png"><img
aria-describedby="caption-attachment-2317" class=" wp-image-2317"
src="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-4.png"
alt="Rekursive Unterteilung der NE Kachel." width="657" height="657"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-4.png 841w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-4-150x150.png 150w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-4-300x300.png 300w"
sizes="(max-width: 657px) 100vw, 657px"></a>
<p id="caption-attachment-2317" class="wp-caption-text">Recursive subdivision of the NE tile. (<a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a>)</p>
</div>
<p>A correspondingly generated data set from Wermelskirchen is made available in the <a
href="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen3DTiles.zip">Wermelskirchen3DTiles</a> archive. How
this data set was created from the CityGML model is explained in the second part of this example. First
of
all, it is a matter of understanding the structure and visualizing it in the Cesium viewer.</p>
<p>After downloading and unpacking the archive, the following file structure was created:</p>
<div id="attachment_2320" style="width: 235px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-5.png"><img
aria-describedby="caption-attachment-2320" class=" wp-image-2320"
src="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-5.png"
alt="Die Ordnerstruktur entspricht der Quadtree-Struktur" width="225" height="341"></a>
<p id="caption-attachment-2320" class="wp-caption-text">The folder structure corresponds to the quadtree
structure (<a href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a>)</p>
</div>
<p>There Wermelskirchen3DTilesis a file in the folder tileset.json. The entire scene graph
is
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
included here, on the basis of which the Cesium Viewer decides which data is to be transmitted and when to
be
displayed on the screen. The file can be viewed in a normal editor such as Notepad ++. Since it is
a
JSON file, the use of a JSON plug-in for Notepad ++ such as <a
href="https://sourceforge.net/projects/jsminnpp/">JSToolNpp</a>, or the VS Code are recommended.</p>
<div id="attachment_2321" style="width: 804px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-JSON.png"><img
aria-describedby="caption-attachment-2321" class=" wp-image-2321"
src="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-JSON-1024x893.png"
alt="Die Datei tileset.json enthält den Szenengraph, der vom Cesium Viewer verwendet wird. "
width="794" height="692"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-JSON-1024x893.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-JSON-300x262.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/3DTiles-JSON.png 1193w"
sizes="(max-width: 794px) 100vw, 794px"></a>
<p id="caption-attachment-2321" class="wp-caption-text">The tileset.json file contains the scene graph used
by the Cesium Viewer. (<a href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE)</a></p>
</div>
<p>The structure of the JSON file corresponds to the quadtree structure. For each quadrant, the coordinates
of
the envelope volume (boundingVolume), the display geometry of the tile ( content), and the
max. Defects errors compared to the original building geometry (geometry error). The actual
display
geometry is b3dmsaved in an external file in the binary format. The geometry is always saved
as a
triangular mesh. Textures and attribute data can also be stored. These files can be found in the
folder structure according to the quadtree structure, e.g.
under ./b3dms/R/NE.b3dmand ./b3dms/R/NE/NE.b3dm. A simplified 3D model is saved for
each
tile. The original building geometry can be found in the leaves of the scene graph, i.e. with tiles
that
are not further subdivided. Based on the geometry error in the tile (geometry error) and the point of
view
(camera) from which the scene is viewed, the Cesium Viewer decides which tiles are to be loaded and
displayed.
</p>
<p>More details about 3D tiles can be found in <a
href="https://cesium.com/blog/2015/08/10/introducing-3d-tiles/">Patrick Cozzi's blog</a>.</p>
<p>In order to display the 3D tiles in Cesium, the files must be copied to the web server, e.g. in Apache in the
directory htdocs. In addition, an HTML file must be created in which the model is linked to the Cesium
viewer. The easiest way to do this is to copy the above-mentioned file HelloWorld.html from
Cesium
and
add the following JavaScript.</p>
<script src="https://gist.github.com/JoeThunyathep/f9aaf2d085582b55d36ea7fc7f79b845.js"></script>
<p>The Cesium Viewer is instantiated in the first line. The instruction viewer.scene.primitives.add
adds
the tileset to the globe. This file contains all the information necessary to decide, depending on the
camera position, which tile must be loaded and displayed in the globe. The following instructions
define
the initial position and orientation of the camera so that 3D building models can be seen when the website
is
loaded.</p>
<p>The result is Wermelskirchen.html saved in the file. The first view of Wermelskirchen is shown
in
the following figure.</p>
<div id="attachment_2312" style="width: 626px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-2.png"><img
aria-describedby="caption-attachment-2312" class=" wp-image-2312"
src="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-2-1024x650.png"
alt="Hallo Wermelskirchen" width="616" height="391"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-2-1024x650.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-2-300x190.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-2.png 1567w"
sizes="(max-width: 616px) 100vw, 616px"></a>
<p id="caption-attachment-2312" class="wp-caption-text">Wermelskirchen Data source: GeoBasis NRW, 3D
building model LoD2, <a href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a></p>
</div>
<hr>
<h2>Part 2: Converting CityGML to 3D Tiles</h2>
<p>The first part of the blog showed how a 3D city model can be visualized in the digital globe Cesium. But
where does the required 3D tiles scene graph come from?</p>
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
<div id="attachment_2304" style="width: 625px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen.png"><img
aria-describedby="caption-attachment-2304" class="wp-image-2304 "
src="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-1024x486.png"
alt="Visualisierung 3D-Gebäudemodell Wermelskirchen " width="615" height="292"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-1024x486.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen-300x142.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/Wermelskirchen.png 1474w"
sizes="(max-width: 615px) 100vw, 615px"></a>
<p id="caption-attachment-2304" class="wp-caption-text">Visualization of the 3D building model in
Wermelskirchen. Data source: GeoBasis NRW, 3D building model
LoD2, <a href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a></p>
</div>
<p>A 3D building model LoD 2 is available as a CityGML data set from Wermelskirchen via the Open Data Portal NRW
and
can <a href="https://www.opengeodata.nrw.de/produkte/geobasis/3dg/lod2_gml/lod2_gml_paketiert/" target="_blank">be
downloaded</a> here. To create a 3D tile scene graph, you have to convert the CityGML
dataset. To do this, you need software that can do that. There are enough options here:</p>
<ul>
<li><a href="https://www.safe.com/integrate/cesium-3d-tiles/">FME supports 3D </a>tiles since version
FME
2017.</li>
<li>Companies such as <a href="http://www.virtualcitysystems.de/">virtualcitySYSTEMS</a> and <a
href="https://cesium.com/collaborate-with-us/">Cesium</a> offer the conversion of CityGML to 3D
Tiles as a service or such a converter is part of the product range</li>
<li>The <a href="https://georocket.io/">GeoRocket</a>geodatabase with the additional GeoToolbox from
Fraunhofer IGD includes a CityGML to 3D tiles converter</li>
</ul>
<p>Unfortunately, there is currently no free software for download that CityGML can use to convert to 3D
tiles. In this example the GeoToolbox from Fraunhofer IGD is used.</p>
<p>The CityGML model Wermelskirchen consists of numerous individual files. These files are first combined
into
one large file wermelskirchen.gml. This can be done, for example, by importing the
individual files into the <a href="https://www.3dcitydb.org/3dcitydb/3dcitydbhomepage/">3D
CityDB</a> or <a href="https://georocket.io/">GeoRocket</a> database and then exporting
the
entire area into a CityGML file.</p>
<p>With the instruction</p>
<code>geo-toolbox-3dtiles --in ".\in\wermelskirchen.gml" --out .\out\ --srsInCode 25832 --strategy quadTree
--doubleSided true</code>
<p> Then, the CityGML model is converted to 3D tiles. A quadtree structure is used as the strategy for
tiling. The EPSG code of the input data set is srsInCode specified with the
parameter . The parameter double-sided defines whether a polygon is visible from both sides
(true) or only from the direction opposite to the surface normal (false), i.e. from the outside. With
this
definition, double sided true, incorrectly oriented areas are no longer visible. Possible errors in the
geometry remain, but you just don't see them anymore.</p>
<p>The result is the file structure of 3D Tiles described in the first part of the
blog. This still has to be made available on a web server, and the 3D model is ready in the web
browser. If you look closely, there is unfortunately still something to be done. Wermelskirchen
has
lifted off and hovered over the globe. This is because the globe does not use a terrain model, the
ground
level is always zero. The building geometry uses the height above sea level. Therefore the
buildings
are in the air.</p>
<div id="attachment_2331" style="width: 774px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles.png"><img
aria-describedby="caption-attachment-2331" class=" wp-image-2331"
src="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-1024x539.png"
alt="Wermelskirchen schwebt über dem Globus" width="764" height="402"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-1024x539.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-300x158.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles.png 1919w"
sizes="(max-width: 764px) 100vw, 764px"></a>
<p id="caption-attachment-2331" class="wp-caption-text">Wermelskirchen hovers over the globe. Datenquelle:
GeoBasis NRW, 3D-Gebäudemodell LoD2, <a href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0
DE</a></p>
</div>
<p>What can you do to avoid the floating buildings? Either the building floor plans are shifted to the
height z
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
= 0 or a terrain model is used.</p>
<p>In order to bring the buildings onto the globe, the height of the floor plan polygon of a building is
subtracted
from all coordinates of the respective building geometry. The floor plan is then at z = 0, otherwise,
the
building geometry remains the same. The software solution clamp2groundfrom Athanasios Koukofikis,
HFT
Stuttgart, can be used for this. To do this, the <a
href="https://www.coors-online.de/wp-content/uploads/2018/05/clamp2ground.zip">clamp2ground</a> archive must
be unpacked. The CityGML file is clamp2ground\in\copied into the folder. Then
the clamp2groundsoftware is started with the .bat or .sh file of the same name. As a result, the
transformed CityGML file is then in the folder clamp2ground\out\. If the result file is converted
to
3D tiles as described above, the buildings are on the globe.</p>
<div id="attachment_2336" style="width: 778px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-2.png"><img
aria-describedby="caption-attachment-2336" class=" wp-image-2336"
src="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-2-1024x515.png"
alt="Wermelskirchen auf den Cesium Globus projiziert" width="768" height="386"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-2-1024x515.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-2-300x151.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-2.png 1917w"
sizes="(max-width: 768px) 100vw, 768px"></a>
<p id="caption-attachment-2336" class="wp-caption-text">Wermelskirchen projected onto the Cesium globe.
Datenquelle: GeoBasis NRW, 3D-Gebäudemodell LoD2, <a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a></p>
</div>
<p>Alternatively, a terrain model can also be integrated into the Cesium Globus. To do this, the JavaScript
in
the file Wermelskirchen.html must be expanded. The following instruction tells Cesium that a 3D
terrain model should be used for the display. The terrain model is provided by the <a
href="https://cesium.com/blog/2018/03/01/introducing-cesium-world-terrain/">Cesium World
Terrain</a> Server by default.</p>
<script src="https://gist.github.com/JoeThunyathep/e12924641842a6cb1ca5cba1235e7e3a.js"></script>
<p>Unfortunately, the building and the terrain do not fit together perfectly, which is probably due to the
resolution of the terrain model. Other terrain models can also be integrated, as described in
the <a href="https://cesiumjs.org/tutorials/Terrain-Tutorial/">Cesium tutorial</a> . The use
of
the <a href="https://www.opengeodata.nrw.de/produkte/geobasis/hm/">terrain model, which is provided by
GeoBasis NRW as Open Data</a>, is a nice exercise. Good luck with that.</p>
<div id="attachment_2337" style="width: 719px" class="wp-caption alignnone"><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-3.png"><img
aria-describedby="caption-attachment-2337" class=" wp-image-2337"
src="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-3-1024x537.png"
alt="Wermelskirchen Gebäudemodell mit Geländemodell" width="709" height="372"
srcset="https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-3-1024x537.png 1024w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-3-300x157.png 300w, https://www.coors-online.de/wp-content/uploads/2018/05/CityGML2-3Dtiles-3.png 1919w"
sizes="(max-width: 709px) 100vw, 709px"></a>
<p id="caption-attachment-2337" class="wp-caption-text">Wermelskirchen building model with terrain model, data source: terrain model: Cesium World Terrain, building model GeoBasis NRW, 3D building model LoD2, <a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a></p>
</div>
<p> </p>
<hr>
<h2>Overview of the software used</h2>
<ul>
<li><a href="https://cesiumjs.org/downloads/">CesiumJS</a></li>
<li>Web Server: <a href="https://httpd.apache.org/">Apache HTTP Server</a> , is also in <a
href="https://www.apachefriends.org/de/index.html">XAMPP</a> included</li>
<li>Editor: <a href="https://notepad-plus-plus.org/">Notepad ++</a> with JSON plugin <a
href="https://sourceforge.net/projects/jsminnpp/">JSToolNpp</a></li>
<li>Web browser: <a href="https://www.mozilla.org/de/firefox/new/">Firefox</a> v56.0</li>
<li><a
href="https://www.coors-online.de/wp-content/uploads/2018/05/clamp2ground.zip">clamp2ground</a> ,
Athanasios Koukofikis, HFT Stuttgart</li>
<li>geotoolbox CityGML to 3D Tiles converter: unfortunately not available for download,
please contact <a
href="https://www.igd.fraunhofer.de/institut/ueber-uns/mitarbeiter/ralf-gutbell">Ralf Gutbell</a>,
Fraunhofer IGD.</li>
</ul>
<h2>Credentials</h2>
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
<ul>
<li>Blog <a
href="https://dragons8mycat.com/2017/09/05/creating-a-cesium-virtual-globe-with-v1-36/">dragons8mycat:
"Creating a Cesium virtual globe with v1.36" from 5.9.2017</a></li>
<li>Tim Rivenbark, <a href="https://cesiumjs.org/demos/NewYork/">3D building model New York in Cesium,
5.5.2017</a></li>
</ul>
<h2>Further work</h2>
<ul>
<li>Coors, V. (Ed.): OGC Testbed 13 - 3D Tiles and I3S Interoperability and Performance Engineering Report,
5.3.2018, <a
href="http://docs.opengeospatial.org/per/17-046.html">http://docs.opengeospatial.org/per/17-046.html</a>, <a
href="http://docs.opengeospatial.org/per/17-046.pdf">PDF</a></li>
<li>Hagedorn, B., Thum, S. Reitz, T., Coors, V., and Gutbell, P. (Eds.): OGC 3D Portrayal Service 1.0,
13.9.2017, <a
href="http://docs.opengeospatial.org/is/15-001r4/15-001r4.html">http://docs.opengeospatial.org/is
/15-001r4/15-001r4.html</a></li>
</ul>
<h2>Copyright</h2>
<p>The texts and images provided in the blog are under the <a
href="https://creativecommons.org/licenses/by/3.0/de/">CC BY 3.0 DE</a> license.</p>
</div>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
crossorigin="anonymous"></script>
</body>
</html>