Fill Extrusion Style Layer
The FillExtrusionStyleLayer
is either used by the map style or can be added to the
map programmatically to symbolize data on the map.
Basic Usage
late final MapController _controller;
Widget build(BuildContext context) {
return MapLibreMap(
options: MapOptions(center: Position(9.17, 47.68)),
onMapCreated: (controller) => _controller = controller,
onStyleLoaded: (style) async {
// add the tile source
await style.addSource(
const GeoJsonSource(
id: _sourceId,
data:
'https://maplibre.org/maplibre-gl-js/docs/assets/indoor-3d-map.geojson',
),
);
const _fillExtrusionStyleLayer = FillExtrusionStyleLayer(
id: 'room-extrusion',
sourceId: _sourceId,
paint: {
// See the MapLibre Style Specification for details on data expressions.
// https://maplibre.org/maplibre-style-spec/expressions/
'fill-extrusion-color': ['get', 'color'],
'fill-extrusion-height': ['get', 'height'],
'fill-extrusion-base': ['get', 'base_height'],
'fill-extrusion-opacity': 0.5
},
);
// add the layer
await style.addLayer(_fillExtrusionLayer);
}
);
}
Check out the example app for to learn more.
Style & Layout
Use the paint
property to change the style and the layout
property to change the behavior on the map.
Read the Paint & Layout chapter to learn more on this topic.