Terrain Layer Example¶
3D terrain visualization using deck.gl TerrainLayer with elevation tiles.
In [ ]:
Copied!
# %pip install anymap-ts
# %pip install anymap-ts
In [ ]:
Copied!
from anymap_ts import DeckGLMap
from anymap_ts import DeckGLMap
Create a 3D terrain map¶
In [ ]:
Copied!
# Terrain-RGB elevation data URL template
TERRAIN_URL = "https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png"
# Satellite imagery for texture
TEXTURE_URL = "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"
m = DeckGLMap(center=[-119.5, 37.7], zoom=10, pitch=60, bearing=30) # Yosemite area
m.add_basemap("CartoDB.DarkMatter")
m.add_terrain_layer(
elevation_data=TERRAIN_URL,
texture=TEXTURE_URL,
elevation_decoder={
"rScaler": 256,
"gScaler": 1,
"bScaler": 1 / 256,
"offset": -32768,
},
mesh_max_error=4,
opacity=1.0,
)
m
# Terrain-RGB elevation data URL template
TERRAIN_URL = "https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png"
# Satellite imagery for texture
TEXTURE_URL = "https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"
m = DeckGLMap(center=[-119.5, 37.7], zoom=10, pitch=60, bearing=30) # Yosemite area
m.add_basemap("CartoDB.DarkMatter")
m.add_terrain_layer(
elevation_data=TERRAIN_URL,
texture=TEXTURE_URL,
elevation_decoder={
"rScaler": 256,
"gScaler": 1,
"bScaler": 1 / 256,
"offset": -32768,
},
mesh_max_error=4,
opacity=1.0,
)
m
Export to HTML¶
In [ ]:
Copied!
m.to_html("terrain_layer_example.html")
m.to_html("terrain_layer_example.html")