This project is to help do mapping inside BabylonJS.
Currently supported data sources include:
* OpenStreetMaps and OpenStreetMaps Buildings
* Mapbox (satellite and terrain)
* Custom Buildings from GeoServer and ArcGIS Online (WFS)
The "Hello World" of creating an OpenStreetMap tileset, along with extruded buildings is:
this.ourTS = new TileSet(this.scene,this.engine);
this.ourTS.setRasterProvider(new RasterOSM(this.ourTS)); //set basemap to pull from Open Street Maps
this.ourTS.createGeometry(new Vector2(4,4), 20, 2); //4x4 tile set, 20m width of each tile, and 2 divisions on each tile
this.ourTS.updateRaster(35.2258461, -80.8400777, 16); //lat, lon, zoom. takes us to charlotte.
this.ourOSM=new BuildingsOSM(this.ourTS); //lets pull building footprints from Open Street Map Buildings
this.ourOSM.accessToken=accessToken; //now requires Auth token
this.ourOSM.generateBuildings();
Live Demos!
https://people.duke.edu/~djzielin/babylonjs-mapping/HelloWorld/
https://people.duke.edu/~djzielin/babylonjs-mapping/Terrain/
Tested with: Node 20.10.0 LTS
$ claude mcp add babylonjs-mapping \
-- python -m otcore.mcp_server <graph>