Options

To dictate & restrict what the map can and should do, regardless of its contents, it needs some guidance!

It provides options that can be categorized into three main parts:

Initial Positioning

Changing these properties after the map has already been built for the first time will have no effect: they only apply on initialisation.

To control the map programatically, use a MapController: Controllers & Cameras.

One part of MapOptions responsibilities is to define how the map should be positioned when first loaded. There's two ways to do this (that are incompatible):

  • initialCenter (LatLng) & initialZoom

  • initialCameraFit

    • by bounds (): CameraFit.bounds

    • by bounds (): CameraFit.insideBounds

    • by coordinates (): CameraFit.coordinates

It is possible to also set the map's initialRotation in degrees, if you don't want it North (0°) facing initially.

If rotation is enabled/allowed, if using initialCameraFit, prefer defining it by coordinates for a more intended/tight fit.

Permanent Rules

One part of MapOptions responsibilities is to define the restrictions and limitations of the map and what users can/cannot do with it.

Some of the options are described elsewhere in this documentation, in context. In addition, the API docs show all the available options, and below is a partial list of options:

  • cameraConstraint

    • camera bounds inside bounds: CameraConstraint.bounds

    • camera center inside bounds: CameraConstraint.center

    • unconstrained (default): CameraConstraint.unconstrained

  • maxZoom and minZoom Sets a hard limit on the maximum and minimum amounts that the map can be zoomed

  • interactionOptions Configures the gestures that the user can use to interact with the map - for example, disable rotation or configure cursor/keyboard rotation

Custom CRS

FM does have some support for using alternative CRSs.

Custom CRSs

Last updated

Was this helpful?