ui/map/aircraft/AircraftRoute3DRenderer¶
Classes¶
AircraftRoute3DRenderer¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:26
3D aircraft route renderer using Three.js.
Renders the selected aircraft's route as elevated line segments and waypoint spheres in the 3D scene so the route visually aligns with the 3D aircraft's altitude.
Altitude rule per segment endpoint:
- If wpalt[i] > 0: use that constraint altitude (meters)
- Otherwise: use the aircraft's current altitude
NOTE: v1 uses scene-relative mercator positioning only. In globe projection the geometry is hidden rather than misprojected; real globe support is a known follow-up (would need per-vertex getMatrixForModel).
Constructors¶
Constructor¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:31
Parameters¶
displayOptions¶
Returns¶
Methods¶
initialize()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:36
Parameters¶
map¶
Map$1
Returns¶
void
updateRouteData()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:74
Parameters¶
data¶
RouteData | null
Returns¶
void
setSelectedAircraft()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:78
Parameters¶
aircraftId¶
string | null
Returns¶
void
setAircraftState()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:82
Parameters¶
lat¶
number
lon¶
number
alt¶
number
Returns¶
void
updateDisplayOptions()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:86
Parameters¶
options¶
Returns¶
void
onStyleChange()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:91
Returns¶
void
destroy()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:112
Returns¶
void
AircraftRoute3DCustomLayer¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:141
Base class for Three.js custom layers in MapLibre GL
This class provides the foundation for rendering 3D content using Three.js within MapLibre GL maps. It handles the integration between Three.js and MapLibre's rendering pipeline.
Based on MapLibre example: https://maplibre.org/maplibre-gl-js/docs/examples/add-3d-model-threejs/
Extends¶
Constructors¶
Constructor¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:163
Parameters¶
displayOptions¶
Returns¶
Overrides¶
Properties¶
id¶
Defined in: ui/map/rendering/CustomLayer3D.ts:26
A unique layer id.
Inherited from¶
type¶
Defined in: ui/map/rendering/CustomLayer3D.ts:27
The layer's type. Must be "custom".
Inherited from¶
renderingMode¶
Defined in: ui/map/rendering/CustomLayer3D.ts:28
Either "2d" or "3d". Defaults to "2d".
Inherited from¶
camera¶
Defined in: ui/map/rendering/CustomLayer3D.ts:30
Inherited from¶
scene¶
Defined in: ui/map/rendering/CustomLayer3D.ts:31
Inherited from¶
renderer¶
Defined in: ui/map/rendering/CustomLayer3D.ts:32
Inherited from¶
map¶
Defined in: ui/map/rendering/CustomLayer3D.ts:33
Inherited from¶
directionalLight1¶
Defined in: ui/map/rendering/CustomLayer3D.ts:36
Inherited from¶
CustomLayer3D.directionalLight1
directionalLight2¶
Defined in: ui/map/rendering/CustomLayer3D.ts:37
Inherited from¶
CustomLayer3D.directionalLight2
Methods¶
onSceneReady()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:168
Called when scene is ready for subclass to add objects Override this to add your 3D objects to the scene
Returns¶
void
Overrides¶
setRouteData()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:176
Parameters¶
data¶
RouteData | null
Returns¶
void
setSelectedAircraft()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:181
Parameters¶
aircraftId¶
string | null
Returns¶
void
setAircraftState()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:186
Parameters¶
lat¶
number
lon¶
number
alt¶
number
Returns¶
void
updateDisplayOptions()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:191
Parameters¶
options¶
Returns¶
void
exportState()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:196
Returns¶
RouteLayerState
importState()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:204
Parameters¶
state¶
RouteLayerState
Returns¶
void
cleanup()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:210
Returns¶
void
updateScene()¶
Defined in: ui/map/aircraft/AircraftRoute3DRenderer.ts:442
Update scene objects before rendering Override this to update your 3D objects each frame
Parameters¶
args?¶
Rendering arguments from MapLibre
Returns¶
void
Overrides¶
onAdd()¶
Defined in: ui/map/rendering/CustomLayer3D.ts:48
Initialize Three.js scene (called by MapLibre when layer is added)
Parameters¶
map¶
Map$1
MapLibre map instance
gl¶
WebGLRenderingContext | WebGL2RenderingContext
WebGL rendering context
Returns¶
void
Inherited from¶
setupLighting()¶
Defined in: ui/map/rendering/CustomLayer3D.ts:104
Setup scene lighting Override this method to customize lighting for your scene
Returns¶
void
Inherited from¶
render()¶
Call Signature¶
Defined in: ui/map/rendering/CustomLayer3D.ts:132
Render the scene (called by MapLibre every frame)
Parameters¶
gl¶
WebGLRenderingContext | WebGL2RenderingContext
WebGL rendering context
matrix¶
number[]
Transformation matrix (deprecated, use args)
Returns¶
void
Inherited from¶
Call Signature¶
Defined in: ui/map/rendering/CustomLayer3D.ts:133
Render the scene (called by MapLibre every frame)
Parameters¶
gl¶
WebGLRenderingContext | WebGL2RenderingContext
WebGL rendering context
args¶
CustomRenderMethodInput
Returns¶
void
Inherited from¶
lngLatToMercator()¶
Defined in: ui/map/rendering/CustomLayer3D.ts:181
Convert longitude/latitude to Mercator coordinates
Parameters¶
lng¶
number
Longitude in degrees
lat¶
number
Latitude in degrees
altitude?¶
number = 0
Altitude in meters
Returns¶
object
Mercator coordinates and scale factor
x¶
y¶
z¶
scale¶
Inherited from¶
CustomLayer3D.lngLatToMercator
createTransformMatrix()¶
Defined in: ui/map/rendering/CustomLayer3D.ts:211
Create a transformation matrix for positioning an object on the map
Parameters¶
lng¶
number
Longitude in degrees
lat¶
number
Latitude in degrees
altitude¶
number
Altitude in meters
heading?¶
number = 0
Heading in radians (0 = North, clockwise)
pitch?¶
number = 0
Pitch in radians (rotation around X axis)
roll?¶
number = 0
Roll in radians (rotation around Y axis)
scale?¶
number = 1
Additional scale factor
Returns¶
Matrix4
Three.js transformation matrix
Inherited from¶
CustomLayer3D.createTransformMatrix
isGlobeProjection()¶
Defined in: ui/map/rendering/CustomLayer3D.ts:255
Check if the current map projection is globe
Returns¶
boolean
True if globe projection is active
Inherited from¶
CustomLayer3D.isGlobeProjection
onRemove()?¶
Defined in: ui/map/rendering/CustomLayer3D.ts:269
Cleanup when layer is removed (called by MapLibre) Override to cleanup any resources
Parameters¶
_map¶
Map$1
_gl¶
WebGLRenderingContext | WebGL2RenderingContext
Returns¶
void