ebeaufay / UltraGlobe

A globe in threejs with OGC WMS imagery, OGC 3dtiles and elevation
GNU General Public License v3.0
194 stars 20 forks source link
3d gis map

Version Downloads

U L T R A G L O B E : http://www.jdultra.com/

image image

The goal of this library is to provide a way to display geospatial data on a globe in threeJS without having a full fledged framework. Instead, the library is intended as a thin layer to allow threeJS developers to work with a geospatial environment while keeping access to lower level threeJS context.

The existing layer system can be used and extended to import data sources without implementing everything from scratch.

The earth model is wgs 84. and uses a modified UV-sphere for terrain tiles.

There's support for WMS and OGC 3DTiles and partial I3S support. There are also a few custom layers allowing fancy visualizations (Google earth 3DTiles, volumetric clouds, Video projection, Line of sight, Moving tracks..).

Vector Layers and physics are in the works.

Documentation

jsdoc

guide

Demos and Code

Other demos:

Shadow analysis

3DTiles

Geoid

Elevation and WMS imagery

I3S Points (new york trees) and blue marble

Controls (including mobile)

More controls for selecting and moving 3DTiles tilesets

Latest development

VectorLayers to display data draped on terrain or in 3D

https://github.com/user-attachments/assets/3c3a935e-3193-4cf4-b296-76328c3f24cb

Projected layers allow projecting a texture onto other data from a given view point. Can be used for video projection, line of sight and anything you can imagine.

https://github.com/user-attachments/assets/e9401d9b-1ee9-42f8-84bf-f445ed05c597

Cloud and planetary ring shadows give a bit more realism. works on all data like google 3D tiles and here, on some procedural data

https://github.com/user-attachments/assets/cf2f12ea-218f-42c2-b861-1316e34345e2

ObjectLayer simplifies geolocating any three.js object

https://github.com/user-attachments/assets/5aa63a07-fb06-4654-af50-6d06db924040