flutter_map library
flutter_map
A versatile mapping package for Flutter. Simple and easy to learn, yet completely customizable and configurable, it's the best choice for mapping in your Flutter app.
- Documentation: docs.fleaflet.dev/
- API Reference: pub.dev/documentation/flutter_map/latest/
- github.com: github.com/fleaflet/flutter_map
- pub.dev: pub.dev/packages/flutter_map
- discord.gg: discord.gg/BwpEsjqMAH
Classes
- AssetTileProvider
- Fetch tiles from the app's shipped assets, where the tile URL is a path within the asset store
- BaseOverlayImage
- Base class for all overlay images.
-
Bounds<
T extends num> - Rectangular bound delimited by orthogonal lines passing through two points.
- CameraConstraint
- Describes a boundary for a MapCamera, that cannot be exceeded by movement
- CameraFit
- Describes a position for a MapCamera
- CenterZoom
- Geographical point with applied zoom level
- CircleLayer
- CircleMarker
- Immutable marker options for circle markers
- CirclePainter
- ContainCamera
- Constrains the edges of the camera to within bounds
- ContainCameraCenter
- Constrains the center coordinate of the camera to within bounds
- Crs
- An abstract representation of a Coordinate Reference System.
- CrsSimple
- CursorKeyboardRotationOptions
- Options to configure cursor/keyboard rotation
- Earth
- Epsg3857
- The most common CRS used for rendering maps.
- Epsg4326
- A common CRS among GIS enthusiasts. Uses simple Equirectangular projection.
- FadeInTileDisplay
- FadeRAWA
- Prebuilt animation provider for a RichAttributionWidget
- FileTileProvider
- Fetch tiles from the local filesystem (not asset store), where the tile URL is a path within the filesystem.
- FitBounds
- FitBoundsOptions
- FitCoordinates
- FitInsideBounds
- FlutterMap
- An interactive geographical map
- InstantaneousTileDisplay
- InteractionOptions
- InteractiveFlag
- Use InteractiveFlag to disable / enable certain events Use InteractiveFlag.all to enable all events, use InteractiveFlag.none to disable all events
- LatLngBounds
- Data structure representing rectangular bounding box constrained by its northwest and southeast corners
- LatLngTween
- LogoSourceAttribution
- An image attribution permanently displayed adjacent to the open/close icon of a RichAttributionWidget
- MapCamera
- Describes the view of a map. This includes the size/zoom/position/crs as well as the minimum/maximum zoom. This class is mostly immutable but has some fields that get calculated lazily, changes to the map view may occur via the MapController or user interactions which will result in a new MapCamera value.
- MapController
- Controller to programmatically interact with FlutterMap, such as controlling it and accessing some of its properties.
- MapControllerImpl
- Implements MapController whilst exposing methods for internal use which should not be visible to the user (e.g. for setting the current camera or linking the internal controller).
- MapEvent
- Base event class which is emitted by MapController instance, the event is usually related to performed gesture on the map itself or it can be an event related to map configuration
- MapEventDoubleTapZoom
- Event which is fired when map is double tapped
- MapEventDoubleTapZoomEnd
- Event which is fired when animation for double tap gesture ends
- MapEventDoubleTapZoomStart
- Event which is fired when animation for double tap gesture is started
- MapEventFlingAnimation
- Event which is fired when animation started by fling gesture is in progress
- MapEventFlingAnimationEnd
- Event which is fired when animation started by fling gesture finished
- MapEventFlingAnimationNotStarted
- Emits when InteractiveFlags contains fling and there wasn't enough velocity to start fling animation
- MapEventFlingAnimationStart
- Event which is fired when fling gesture is detected
- MapEventLongPress
- Event which is fired when map is long-pressed
- MapEventMove
- Event which is fired when map is being moved.
- MapEventMoveEnd
- Event which is fired when dragging is finished
- MapEventMoveStart
- Event which is fired when dragging is started
- MapEventNonRotatedSizeChange
- MapEventRotate
- Event which is fired when map is being rotated
- MapEventRotateEnd
- Event which is fired when rotate gesture has ended
- MapEventRotateStart
- Event which is fired when rotate gesture was started
- MapEventScrollWheelZoom
- Event which is fired when scroll wheel is used to zoom
- MapEventSecondaryTap
- MapEventTap
- Event which is fired when map is tapped
- MapEventWithMove
- Base event class which is emitted by MapController instance and includes information about camera movement which are not partial (e.g start rotate, rotate, end rotate).
- MapOptions
- MapPosition
- Marker
- A container for a child widget located at a geographic coordinate point
- MarkerLayer
- MobileLayerTransformer
- Transforms a child widget tree into a layer that can move and rotate based on the MapCamera
- MultiFingerGesture
- Use MultiFingerGesture to disable / enable certain gestures Use MultiFingerGesture.all to enable all gestures, use MultiFingerGesture.none to disable all gestures
- NetworkTileProvider
- TileProvider to fetch tiles from the network
- OverlayImage
- Unrotated overlay image that spans between a given bounding box.
- OverlayImageLayer
- Polygon
- PolygonLayer
- PolygonPainter
- Polyline
- PolylineLayer
- PolylinePainter
- PositionedTapController
- PositionedTapDetector2
- Proj4Crs
- Custom CRS
- Projection
- RenderTranslucentPointer
- A render object that is invisible to its parent during hit testing.
- RichAttributionWidget
- A prebuilt dynamic attribution layer that supports both logos and text through SourceAttributions
- RichAttributionWidgetAnimation
- Animation provider interface for a RichAttributionWidget
- RotatedOverlayImage
- Spans an image across three corner points.
- ScaleRAWA
- Prebuilt animation provider for a RichAttributionWidget
- SimpleAttributionWidget
- A simple, classic style, attribution layer
- SourceAttribution
- Base class for attributions that render themselves as widgets in a RichAttributionWidget
- SphericalMercator
- TapPosition
- TextSourceAttribution
- A simple text attribution displayed in the popup box of a RichAttributionWidget
- TileCoordinates
- TileDisplay
- TileImage
- TileLayer
- Describes the needed properties to create a tile-based layer. A tile is an image bound to a specific geographical position.
- TileProvider
- The base tile provider, extended by other classes with more specialised purposes and/or requirements
- TileUpdateEvent
- Describes whether loading and/or pruning should occur and allows overriding the load center/zoom.
- TileUpdateTransformers
- Set of default TileUpdateTransformers
- Transformation
- TranslucentPointer
- A widget that is invisible for its parent during hit testing, but still allows its subtree to receive pointer events
- UnconstrainedCamera
- Does not apply any constraint to a MapCamera
- WMSTileLayerOptions
Enums
- AttributionAlignment
- Position to anchor RichAttributionWidget to relative to the FlutterMap
- CursorRotationBehaviour
- The behaviour of the cursor/keyboard rotation function in terms of the angle that the map is rotated to
- EvictErrorTileStrategy
- MapEventSource
- Event sources which are used to identify different types of MapEvent events
- PolygonLabelPlacement
- RetinaMode
- Retina mode improves the resolution of map tiles, particularly on high density displays
Extensions
-
DoublePointExtension
on Point<
double> - This extension contains methods which, if defined on Point
-
IntegerPointExtension
on Point<
int> - This extension contains methods which, if defined on Point
- OffsetToPointExtension on Offset
-
PointExtension
on Point<
T>
Functions
-
coordinateDebugTileBuilder(
BuildContext context, Widget tileWidget, TileImage tile) → Widget - Shows coordinates over Tiles
-
darkModeTileBuilder(
BuildContext context, Widget tileWidget, TileImage tile) → Widget - Applies inversion color matrix on Tiles which may simulate Dark mode. darkModeTilesContainerBuilder is better at performance because it applies color matrix on the container instead of on every Tile
-
darkModeTilesContainerBuilder(
BuildContext context, Widget tilesContainer) → Widget - Applies inversion color matrix on Tiles container which may simulate Dark mode.
-
isClockwise(
List< LatLng> points) → bool -
loadingTimeDebugTileBuilder(
BuildContext context, Widget tileWidget, TileImage tile) → Widget - Shows the Tile loading time in ms
Typedefs
-
CustomPoint<
T extends num> = Point< T> - ErrorTileCallBack = void Function(TileImage tile, Object error, StackTrace? stackTrace)
- IsKeyCursorRotationTrigger = bool Function(LogicalKeyboardKey key)
- See CursorKeyboardRotationOptions.isKeyTrigger
- LongPressCallback = void Function(TapPosition tapPosition, LatLng point)
- MapEventCallback = void Function(MapEvent)
- MoveAndRotateResult = ({bool moveSuccess, bool rotateSuccess})
- PointerCancelCallback = void Function(PointerCancelEvent event, LatLng point)
- PointerDownCallback = void Function(PointerDownEvent event, LatLng point)
- PointerHoverCallback = void Function(PointerHoverEvent event, LatLng point)
- PointerUpCallback = void Function(PointerUpEvent event, LatLng point)
- PositionCallback = void Function(MapPosition position, bool hasGesture)
- TapCallback = void Function(TapPosition tapPosition, LatLng point)
- TapPositionCallback = void Function(TapPosition position)
-
TemplateFunction
= String Function(String str, Map<
String, String> data) - TileBuilder = Widget Function(BuildContext context, Widget tileWidget, TileImage tile)
-
TileUpdateTransformer
= StreamTransformer<
TileUpdateEvent, TileUpdateEvent> - Defines which TileUpdateEvents should cause which TileUpdateEvents and when