Skip to main content

Class: GarminMapBuilder

A builder for Garmin maps.

Constructors

constructor

new GarminMapBuilder(): GarminMapBuilder

Returns

GarminMapBuilder

Methods

activeFlightPlan

activeFlightPlan<MapBuilder>(mapBuilder, flightPlanner, pathRenderer, drawEntirePlan, configure, options?, order?): MapBuilder

Configures a map builder to generate a map which displays the active flight plan. The flight path and all waypoints that are part of the flight plan are displayed. Waypoints displayed in this manner are rendered by a MapWaypointRenderer under the roles MapWaypointRenderRole.FlightPlanActive or MapWaypointRenderRole.FlightPlanInactive. Additionally, if VNAV is supported, TOD and BOD markers will also be rendered under the role MapWaypointRenderRole.VNav.

If a text layer has already been added to the builder, its order will be changed so that it is rendered above the flight plan layers. Otherwise, a text layer will be added to the builder after the flight plan layers.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
flightPlannerFlightPlanner<any> | Subscribable<FlightPlanner<any>>The flight planner from which to retrieve the active flight plan.
pathRendererMapFlightPathPlanRendererThe flight path renderer to use to the draw the flight plan.
drawEntirePlanboolean | Subscribable<boolean>Whether the entire flight plan should always be drawn.
configure(builder: MapWaypointDisplayBuilder) => voidA function used to configure the display and styling of flight plan waypoint icons and labels.
options?boolean | Readonly<ActiveFlightPlanOptions>Options with which to configure the display of the active flight plan. If a boolean value is provided in place of an options object, then it will be interpreted as the supportFocus option.
order?numberThe order to assign to the flight plan layers. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1010


airspaceVisSettings

airspaceVisSettings<MapBuilder>(mapBuilder, settingManager): MapBuilder

Configures a map builder to bind the visibility of airspaces to user settings.

Requires the modules defined in MapAirspaceVisControllerModules.

Adds the controller [GarminMapKeys.AirspaceVisibility]: MapAirspaceVisController.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<MapAirspaceVisControllerModules, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
settingManagerUserSettingManager<Partial<MapAirspaceVisUserSettings>>A setting manager containing the user settings controlling airspace visibility.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1327


airspaces

airspaces<MapBuilder>(mapBuilder, settingManager?, order?): MapBuilder

Configures a map builder to generate a map which displays airspaces, and optionally binds the visibility of airspaces to user settings.

Adds the following...

Context properties:

  • [MapSystemKeys.AirspaceManager]: GenericAirspaceRenderManager

Modules:

  • [MapSystemKeys.Airspace]: MapAirspaceModule

Layers:

  • [MapSystemKeys.Airspace]: MapAirspaceLayer

Controllers:

  • [GarminMapKeys.AirspaceVisibility]: MapAirspaceVisController (only with user settings support)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
settingManager?UserSettingManager<Partial<MapAirspaceVisUserSettings>>A setting manager containing the user settings controlling airspace visibility. If not defined, airspace visibility will not be controlled by user settings.
order?numberThe order to assign to the airspace layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1295


altitudeArc

altitudeArc<MapBuilder>(mapBuilder, options, settingManager?, order?): MapBuilder

Configures a map builder to generate a map with an altitude intercept arc, and optionally binds the display of the arc to a user setting.

Adds the following...

Modules:

  • [MapSystemKeys.AltitudeArc]: MapAltitudeArcModule

Layers:

  • [MapSystemKeys.AltitudeArc]: MapAltitudeArcLayer

Controllers:

  • [MapSystemKeys.AltitudeArc]: MapBindingsController (only if user settings are supported)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapAltitudeArcLayerModules, "altitudeArc">, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
optionsAltitudeArcOptionsOptions for the arc.
settingManager?UserSettingManager<{ mapAltitudeArcShow?: boolean }>A setting manager containing user settings used to control the display of the arc. If not defined, the display of the arc will not be bound to user settings.
order?numberThe order to assign to the altitude arc layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1777


autopilotProps

autopilotProps<MapBuilder>(mapBuilder, propertiesToBind?, updateFreq?): MapBuilder

Configures a map builder to add a module describing the player airplane's autopilot properties, and optionally binds the module's properties to data received over the event bus.

Adds the following...

Modules:

  • [MapSystemKeys.AutopilotProps]: MapGarminAutopilotPropsModule

Controllers:

  • [MapSystemKeys.AutopilotProps]: MapGarminAutopilotPropsController (optional)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
propertiesToBind?Iterable<MapGarminAutopilotPropsKey | MapGarminAutopilotPropsBinding>Properties on the autopilot module to bind to data received over the event bus.
updateFreq?number | Subscribable<number>The update frequency, in hertz, of the data bindings, or a subscribable which provides it. If not defined, the data bindings will update every frame. Ignored if propertiesToBind is undefined.

Returns

MapBuilder

This builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:169


crosshair

crosshair<MapBuilder>(mapBuilder): MapBuilder

Configures a map builder to generate a map which displays a crosshair at the projected target position when the map is not following the player airplane. If the map does not have the module [MapSystemKeys.FollowAirplane]: MapFollowAirplaneModule, the map is assumed to never follow the player airplane, and the crosshair will always be visible.

Adds the following...

Modules:

  • [GarminMapKeys.Crosshair]: MapCrosshairModule

Layers:

  • [GarminMapKeys.Crosshair]: MapCrosshairLayer

Controllers:

  • [GarminMapKeys.Crosshair]: MapBindingsController

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:765


dataIntegrity

dataIntegrity<MapBuilder>(mapBuilder, airplaneIconSrc?, airplaneIconAnchor?, normalIconSrc?, normalIconAnchor?, noHeadingIconSrc?, noHeadingIconAnchor?): MapBuilder

Configures a map builder to generate a map which supports data integrity state. During loss of valid heading information, the map will default to North Up orientation, and the player airplane icon will optionally be changed to reflect this state. During loss of valid GPS signal, the map will stop attempting to follow the player airplane, and the player airplane icon will be hidden.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
airplaneIconSrc?MutableSubscribable<string, string>A mutable subscribable which controls the player airplane icon's image source URI. Required for this controller to change the player airplane icon.
airplaneIconAnchor?MutableSubscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>, Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>A mutable subscribable which controls the anchor point of the player airplane icon. Required for this controller to change the player airplane icon.
normalIconSrc?string | Subscribable<string>The URI of the normal player airplane icon's image source, or a subscribable which provides it. Required for the player airplane icon to change during loss of valid heading information.
normalIconAnchor?Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>The anchor point of the normal player airplane icon, as [x, y], where each component is relative to the width or height of the icon, or a subscribable which provides it. Required for the player airplane icon to change during loss of valid heading information.
noHeadingIconSrc?string | Subscribable<string>The URI of the no-heading player airplane icon's image source, or a subscribable which provides it. Required for the player airplane icon to change during loss of valid heading information.
noHeadingIconAnchor?Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>The anchor point of the no-heading player airplane icon, as [x, y], where each component is relative to the width or height of the icon, or a subscribable which provides it. Required for the player airplane icon to change during loss of valid heading information.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:490


declutter

declutter<MapBuilder>(mapBuilder, settingManager?): MapBuilder

Configures a map builder to generate a map which supports declutter modes, and optionally binds the declutter mode to a user setting.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
settingManager?UserSettingManager<{ mapDeclutter?: MapDeclutterSettingMode }>A user setting manager containing the setting controlling declutter mode.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:536


flightPlanFocus

flightPlanFocus<MapBuilder>(mapBuilder, nominalFocusMargins?, defaultFocusRangeIndex?, focusDebounceDelay?): MapBuilder

Configures the map builder to generate a map which supports flight plan focus. Flight plan focus automatically adjusts the map's target and range to place a portion of a flight plan into view.

Adds the following...

Modules:

  • [GarminMapKeys.FlightPlanFocus]: MapFlightPlanFocusModule

Controllers:

  • [GarminMapKeys.FlightPlanFocus]: MapFlightPlanFocusRTRController

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapFlightPlanFocusRTRControllerModules, "flightPlanFocus">, any, any, MapFlightPlanFocusRTRControllerContext>

Parameters

NameTypeDefault valueDescription
mapBuilderMapBuilderundefinedThe map builder to configure.
nominalFocusMargins?Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>undefinedA subscribable which provides the nominal focus margins, as [left, top, right, bottom] in pixels. The nominal margins define the offset of the boundaries of the focus region relative to the map's projected window, excluding the dead zone. Positive values represent offsets toward the center of the window. When the flight plan is focused, the focused elements of the plan are guaranteed to be contained within the focus region.
defaultFocusRangeIndexnumber0The default map range index to apply when the flight plan focus consists of only a single point in space.
focusDebounceDelaynumber500The debounce delay, in milliseconds, to apply to focus target calculations when the flight plan focus changes. Defaults to 500 milliseconds.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1723


flightPlans

flightPlans<MapBuilder>(mapBuilder, options, configure, order?): MapBuilder

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameType
mapBuilderMapBuilder
optionsFlightPlanOptions[]
configure(builder: MapWaypointDisplayBuilder) => void
order?number

Returns

MapBuilder

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:906


indicatorGroup

indicatorGroup<MapBuilder>(mapBuilder, key, indicatorFactories, callbacks?, cssClass?, order?): MapBuilder

Configures a map builder to include an indicator group.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
keystringThe key of the indicator group.
indicatorFactoriesreadonly (context: MapBuilder extends MapSystemBuilder<M, L, C, Context> ? MapSystemContext<M, L, C, Context> : never) => VNode[]An array of functions which create the indicators. The order of functions in the array determines the order in which the created indicators will be added to the group.
callbacks?IndicatorGroupCallbacksOptional callback functions to register with the indicator group.
cssClass?string | SubscribableSet<string>The CSS class(es) to apply to the root of the indicator group.
order?numberThe order to assign to the layer containing the indicator group. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:2055


miniCompass

miniCompass<MapBuilder>(mapBuilder, imgSrc, order?): MapBuilder

Configures a map builder to generate a map which displays a miniature compass.

Adds the layer GarminMapKeys.MiniCompass: MapMiniCompassLayer.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
imgSrcstringThe URI of the mini-compass's image asset.
order?numberThe order to assign to the mini-compass layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1941


nexrad

nexrad<MapBuilder>(mapBuilder, minRangeIndex?, settingManager?, maxDeclutterMode?, colors?): MapBuilder

Configures a map builder to generate a map which supports NEXRAD, and optionally binds the display of NEXRAD to user settings.

Requires the module [MapSystemKeys.Weather]: MapWxrModule.

Adds the following...

Modules:

  • [GarminMapKeys.Range]: MapIndexedRangeModule
  • [GarminMapKeys.Nexrad]: MapNexradModule

Controllers:

  • [MapSystemKeys.Weather]: MapWxrController
  • [GarminMapKeys.Nexrad]: MapNexradController

Type parameters

NameType
MapBuilderextends MapSystemBuilder<{ weather: MapWxrModule }, any, any, any>

Parameters

NameTypeDefault valueDescription
mapBuilderMapBuilderundefinedThe map builder to configure.
minRangeIndexnumber0The minimum range index, inclusive, at which NEXRAD is visible. Defaults to 0.
settingManager?UserSettingManager<Partial<MapNexradUserSettings>>undefinedA user setting manager containing settings which control NEXRAD. If not defined, NEXRAD will not be controlled by user settings.
maxDeclutterMode?MapDeclutterModeundefinedThe highest global declutter mode, inclusive, at which NEXRAD is visible. Defaults to MapDeclutterMode.Level2. Ignored if NEXRAD user settings are not supported.
colors?readonly readonly [number, number][]undefinedThe color array for the NEXRAD overlay. If not defined, default colors will be applied.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:639


orientation

orientation<MapBuilder>(mapBuilder, nominalTargetOffsets?, nominalRangeEndpoints?, settingManager?): MapBuilder

Configures a map builder to generate a map which supports different orientations, as enumerated by MapOrientation. Each orientation defines a different rotation behavior, target offset, and range endpoints.

Adds the following...

Context properties:

  • [MapSystemKeys.RotationControl]: ResourceModerator<void>
  • [GarminMapKeys.OrientationControl]: ResourceModerator<void>
  • [GarminMapKeys.DesiredOrientationControl]: ResourceModerator<void>

Modules:

  • [MapSystemKeys.Rotation]: MapRotationModule
  • [GarminMapKeys.Orientation]: MapOrientationModule
  • [GarminMapKeys.Range]: MapIndexedRangeModule

Controllers:

  • [MapSystemKeys.Rotation]: MapRotationController
  • [GarminMapKeys.OrientationRTR]: MapOrientationRTRController
  • [GarminMapKeys.Orientation]: MapOrientationModeController
  • [GarminMapKeys.DesiredOrientation]: MapDesiredOrientationController
  • [GarminMapKeys.OrientationSettings]: MapOrientationSettingsController (only with user setting support)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
nominalTargetOffsets?Partial<Record<MapOrientation, Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>>>The nominal projected target offsets defined by each orientation. Each target offset is a 2-tuple [x, y], where each component is expressed relative to the width or height of the map's projected window, excluding the dead zone. If an orientation does not have a defined offset, it will default to [0, 0].
nominalRangeEndpoints?Partial<Record<MapOrientation, Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>>>The nominal range endpoints defined by each orientation. Each set of range endpoints is a 4-tuple [x1, y1, x2, y2], where each component is expressed relative to the width or height of the map's projected window, excluding the dead zone. If an orientation does not have defined range endpoints, it will default to [0.5, 0.5, 0.5, 0] (center to top-center).
settingManager?UserSettingManager<Partial<MapOrientationSettingsControllerSettings>>A setting manager containing user settings used to control the map orientation. If not defined, map orientation will not be bound to user settings.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:397


pointer

pointer<MapBuilder>(mapBuilder, pointerBoundsOffset, icon?, order?): MapBuilder

Configures a map builder to generate a map with pointer support. Activating the pointer allows the pointer to control map panning and stops the map from actively rotating.

If map target, orientation, or rotation control resource moderators exist on the map context, the panning RTR controller will attempt to claim those resources with a priority of 100. Otherwise, the controller assumes nothing else controls the map target or rotation.

Adds the following...

Modules:

  • [GarminMapKeys.Panning]: MapPanningModule
  • [GarminMapKeys.Pointer]: MapPointerModule

Layers:

  • [GarminMapKeys.Pointer]: MapPointerLayer

Controllers:

  • [GarminMapKeys.PanningRTR]: MapPanningRTRController
  • [GarminMapKeys.Pointer]: MapPointerController (can be used to control the behavior of the pointer)
  • [GarminMapKeys.PointerRTR]: MapPointerRTRController

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, MapPanningRTRControllerContext>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
pointerBoundsOffsetReadonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>The offset of the boundary surrounding the area in which the pointer can freely move, from the edge of the projected map, excluding the dead zone, or a subscribable which provides it. Expressed as [left, top, right, bottom], relative to the width and height, as appropriate, of the projected map window. A positive offset is directed toward the center of the map.
icon?VNodeThe pointer icon to render, as a VNode. If not default, a default icon will be rendered.
order?numberThe order to assign to the pointer layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1642


pointerInfo

pointerInfo<MapBuilder>(mapBuilder, size, order?): MapBuilder

Configures a map builder to generate a map which displays a pointer information box when the pointer is active.

Requires the modules defined in MapPointerInfoLayerModules.

Adds the layer [GarminMapKeys.PointerInfo]: MapPointerInfoLayer.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<MapPointerInfoLayerModules, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
sizeMapPointerInfoLayerSizeThe size of the pointer information box.
order?numberThe order to assign to the pointer information layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1684


procPreview

procPreview<MapBuilder>(mapBuilder, pathRenderer, configure, order?): MapBuilder

Configures a map builder to generate a map which supports a flight plan procedure preview.

If a text layer has already been added to the builder, its order will be changed so that it is rendered above the highlighted waypoint layers. Otherwise, a text layer will be added to the builder after the highlighted waypoint layers.

Adds the following...

Context properties:

  • [MapSystemKeys.TextManager]: MapCullableTextLabelManager
  • [MapSystemKeys.WaypointRenderer]: MapWaypointRenderer
  • [GarminMapKeys.WaypointDisplayBuilder]: MapWaypointDisplayBuilder

Modules:

  • [GarminMapKeys.ProcedurePreview]: MapProcedurePreviewModule

Layers:

  • [GarminMapKeys.ProcedurePreview]: MapProcedurePreviewLayer
  • [MapSystemKeys.TextLayer]: MapCullableTextLayer

Controllers:

  • [MapSystemKeys.WaypointRenderer]: MapSystemCustomController (handles initialization and updating of the waypoint renderer)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
pathRendererMapFlightPathProcRendererThe flight path renderer to use to render the procedure preview.
configure(builder: MapWaypointDisplayBuilder) => voidA function used to configure the display and styling of procedure preview waypoint icons and labels.
order?numberThe order to assign to the highlighted waypoint layers. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1990


range

range<MapBuilder>(mapBuilder, nauticalRangeArray?, metricRangeArray?, settingManager?, useRangeSettingByDefault?): MapSystemBuilder<any, any, any, any>

Configures a map builder to generate a map which supports multiple indexed ranges, with optional support for controlling the map range with a user setting.

Adds the following...

Context properties:

  • [MapSystemKeys.RangeControl]: ResourceModerator<void>
  • [GarminMapKeys.UseRangeSetting]: ResourceModerator<Subject<boolean>> (only if user setting support is enabled)

Modules:

  • [GarminMapKeys.Range]: MapIndexedRangeModule

Controllers:

  • [GarminMapKeys.RangeRTR]: MapRangeRTRController
  • [GarminMapKeys.Range]: MapRangeController (can be used to control map range)
  • 'useRangeSettingDefault': MapSystemCustomController (only if user setting support is enabled)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDefault valueDescription
mapBuilderMapBuilderundefinedThe map builder to configure.
nauticalRangeArray?readonly NumberUnitInterface<Distance, Unit<Distance>>[]undefinedThe map range array to use for nautical distance mode. If not defined, a range array will not automatically be set when entering nautical distance mode.
metricRangeArray?readonly NumberUnitInterface<Distance, Unit<Distance>>[]undefinedThe map range array to use for metric distance mode. If not defined, a range array will not automatically be set when entering metric distance mode.
settingManager?UserSettingManager<MapRangeControllerSettings>undefinedA setting manager containing a user setting to control the map range. If not defined, range will not be controlled by a user setting.
useRangeSettingByDefaultbooleantrueWhether the range user setting should control the map range by default. Defaults to true. Is ignored if settingManager is undefined.

Returns

MapSystemBuilder<any, any, any, any>

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:234


rangeCompass

rangeCompass<MapBuilder>(mapBuilder, options, order?): MapBuilder

Configures a map builder to generate a map which displays a range compass. The range compass is displayed only in Heading Up and Track Up orientation. If the map also supports a range ring, the range ring will be hidden while the range compass is displayed.

Requires the modules defined in MapRangeCompassLayerModules with the exception of 'rangeCompass'.

Adds the following...

Modules:

  • [GarminMapKeys.RangeCompass]: MapRangeCompassModule

Layers:

  • [GarminMapKeys.RangeCompass]: MapRangeCompassLayer

Controllers:

  • [GarminMapKeys.RangeCompass]: MapRangeCompassController

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapRangeCompassLayerModules, "rangeCompass">, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
optionsRangeCompassOptionsStyling options for the compass.
order?numberThe order to assign to the range compass layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:722


rangeRing

rangeRing<MapBuilder>(mapBuilder, options, order?): MapBuilder

Configures a map builder to generate a map which displays a range ring.

Requires the modules defined in MapRangeRingLayerModules with the exception of 'rangeRing'.

Adds the following...

Modules:

  • [GarminMapKeys.RangeRing]: MapRangeRingModule

Layers:

  • [GarminMapKeys.RangeRing]: MapRangeRingLayer

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapRangeRingLayerModules, "rangeRing">, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
optionsRangeRingOptionsStyling options for the ring.
order?numberThe order to assign to the range ring layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:679


terrainColors

terrainColors<MapBuilder>(mapBuilder, colors, settingManager?, terrainModeOptions?, groundRelativeBlendDuration?): MapBuilder

Configures a map builder to generate a map which supports terrain color modes, and optionally binds the modes to user settings.

Adds the following...

Modules:

  • [GarminMapKeys.Range]: MapIndexedRangeModule (only with user settings support)
  • [GarminMapKeys.Terrain]: MapTerrainModule

Controllers:

  • [MapSystemKeys.TerrainColors]: MapTerrainColorsController
  • [GarminMapKeys.Terrain]: MapTerrainController (only with user settings support)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<{ terrainColors: MapTerrainColorsModule }, any, any, any>

Parameters

NameTypeDefault valueDescription
mapBuilderMapBuilderundefinedThe map builder to configure.
colorsPartial<Record<MapTerrainMode, MapTerrainColorsDefinition>>undefinedThe terrain colors to use for each terrain mode. Ignored if includeTerrain is false.
settingManager?UserSettingManager<Partial<MapTerrainUserSettings>>undefinedA user setting manager containing settings which control terrain colors. If not defined, terrain color mode will not be controlled by user settings.
terrainModeOptions?boolean | Readonly<MapTerrainControllerOptions>undefinedOptions with which to configure the terrain mode controller. If a boolean value is provided in place of an options object, then it will be interpreted as the allowRelative option. Ignored if terrain colors is not controlled by user settings.
groundRelativeBlendDurationnumber0The amount of time, in milliseconds, over which to blend the on-ground and relative terrain mode colors when transitioning between the two. A blend transition is only possible if colors are defined for both the on-ground and relative terrain modes, and the colors for both modes have the same number of steps and are applied over the same elevation range. Defaults to 0 milliseconds.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:590


trackVector

trackVector<MapBuilder>(mapBuilder, options, settingManager?, order?): MapBuilder

Configures a map builder to generate a map with a track vector, and optionally binds the display options of the vector to user settings.

Adds the following...

Modules:

  • [GarminMapKeys.TrackVector]: MapTrackVectorModule

Layers:

  • [GarminMapKeys.TrackVector]: MapTrackVectorLayer

Controllers:

  • [GarminMapKeys.TrackVector]: MapBindingsController (only if user settings are supported)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapTrackVectorLayerModules, "trackVector">, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
optionsTrackVectorOptionsOptions for the track vector.
settingManager?UserSettingManager<{ mapTrackVectorLookahead?: number ; mapTrackVectorShow?: boolean }>A setting manager containing user settings used to control the track vector. If not defined, the track vector will not be bound to user settings.
order?numberThe order to assign to the track vector layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1832


traffic

traffic<MapBuilder>(mapBuilder, trafficSystem, iconOptions, useOuterRangeAsOffScale, offScaleStatus?, iconFactory?, initCanvasStyles?, trafficSettingManager?, mapSettingManager?, order?): MapBuilder

Configures a map builder to generate a map which displays TCAS intruders.

Adds the following...

Modules:

  • [GarminMapKeys.Range]: MapIndexedRangeModule
  • [MapSystemKeys.OwnAirplaneProps]: MapOwnAirplanePropsModule
  • [MapSystemKeys.FollowAirplane]: MapFollowAirplaneModule
  • [MapSystemKeys.Traffic]: MapTrafficModule
  • [GarminMapKeys.Traffic]: MapGarminTrafficModule

Layers:

  • [MapSystemKeys.Traffic]: MapSystemTrafficLayer

Controllers:

  • [MapSystemKeys.Traffic]: MapTrafficController
  • [GarminMapKeys.Traffic]: MapGarminTrafficController (only with user settings support)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
trafficSystemTrafficSystemThe traffic system from which to derive intruder data.
iconOptionsTrafficIconOptionsConfiguration options for intruder icons.
useOuterRangeAsOffScalebooleanWhether to use the outer traffic range defined in MapGarminTrafficModule as the off-scale traffic range.
offScaleStatus?MutableSubscribable<MapTrafficOffScaleStatus, MapTrafficOffScaleStatus>A mutable subscribable to update with the layer's off-scale traffic status.
iconFactory?MapTrafficIntruderIconFactoryA function which creates intruder icons for the traffic display. If not defined, a default icon of type MapTrafficIntruderIcon is created for each intruder.
initCanvasStyles?(context: CanvasRenderingContext2D) => voidA function which initializes global canvas styles for the traffic display.
trafficSettingManager?UserSettingManager<Partial<TrafficUserSettingTypes>>A setting manager containing user settings controlling the operation of the traffic system. If not defined, the display of map traffic will not be controlled by those settings.
mapSettingManager?UserSettingManager<Partial<MapTrafficUserSettings>>A setting manager containing user settings controlling the display of traffic on maps. If not defined, the display of map traffic will not be controlled by those settings.
order?numberThe order to assign to the traffic layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1370


trafficRange

trafficRange<MapBuilder>(mapBuilder, nauticalRangeArray?, metricRangeArray?, settingManager?, useRangeSettingByDefault?): MapBuilder

Configures a map builder to generate a map which supports multiple indexed traffic map ranges, with optional support for controlling the map range with a user setting. At each range index there is an outer range and an inner range, except for the first index, at which there is just an outer range. The inner range is always the largest range in the range array that is less than the outer range.

Requires the module [GarminMapKeys.Traffic]: MapGarminTrafficModule.

Adds the following...

Context properties:

  • [GarminMapKeys.UseRangeSetting]: ResourceModerator<Subject<boolean>> (only if user setting support is enabled)

Modules:

  • [GarminMapKeys.Range]: MapIndexedRangeModule

Controllers:

  • [GarminMapKeys.RangeRTR]: MapRangeRTRController
  • [GarminMapKeys.TrafficRange]: TrafficMapRangeController (can be used to control map range)
  • 'useRangeSettingDefault': MapSystemCustomController (only if user setting support is enabled)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<{ garminTraffic: MapGarminTrafficModule }, any, any, any>

Parameters

NameTypeDefault valueDescription
mapBuilderMapBuilderundefinedThe map builder to configure.
nauticalRangeArray?readonly NumberUnitInterface<Distance, Unit<Distance>>[]undefinedThe map range array to use for nautical distance mode. If not defined, a range array will not automatically be set when entering nautical distance mode.
metricRangeArray?readonly NumberUnitInterface<Distance, Unit<Distance>>[]undefinedThe map range array to use for metric distance mode. If not defined, a range array will not automatically be set when entering metric distance mode.
settingManager?UserSettingManager<TrafficMapRangeControllerSettings>undefinedA setting manager containing a user setting to control the map range. If not defined, range will not be controlled by a user setting.
useRangeSettingByDefaultbooleantrueWhether the range user setting should control the map range by default. Defaults to true. Is ignored if settingManager is undefined.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1519


trafficRangeRings

trafficRangeRings<MapBuilder>(mapBuilder, ringOptions?, order?): MapBuilder

Configures a map builder to generate a map which displays traffic range rings. There are two rings: an outer and an inner ring. Each ring has tick marks at the 12 clock positions, with major ticks at the 4 cardinal positions. Each ring also has an optional label which displays the range marked by the ring.

Requires the modules defined in TrafficMapRangeLayerModules.

Adds the layer [GarminMapKeys.TrafficRange]: TrafficMapRangeLayer.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<TrafficMapRangeLayerModules, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
ringOptions?TrafficRangeRingOptionsStyling options for the rings.
order?numberThe order to assign to the ring layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1594


units

units<MapBuilder>(mapBuilder, settingManager?): MapBuilder

Configures a map builder to generate a map with measurement unit support.

Adds the module [GarminMapKeys.Units]: MapUnitsModule.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
settingManager?UnitsUserSettingManager<UnitsUserSettingTypes>A units setting manager to control the map's measurement units. If not defined, the map will use a default set of measurement units.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:199


waypointHighlight

waypointHighlight<MapBuilder>(mapBuilder, includeLine, configure, lineOptions?, order?): MapBuilder

Configures a map builder to generate a map which supports displaying a highlighted waypoint, and optionally drawing a line from the highlighted waypoint to the position of the player airplane.

If a text layer has already been added to the builder, its order will be changed so that it is rendered above the highlighted waypoint layers. Otherwise, a text layer will be added to the builder after the highlighted waypoint layers.

Adds the following...

Context properties:

  • [MapSystemKeys.TextManager]: MapCullableTextLabelManager
  • [MapSystemKeys.WaypointRenderer]: MapWaypointRenderer
  • [GarminMapKeys.WaypointDisplayBuilder]: MapWaypointDisplayBuilder

Modules:

  • [GarminMapKeys.WaypointHighlight]: MapWaypointHighlightModule

Layers:

  • [GarminMapKeys.WaypointHighlightLine]: MapLineLayer (only if line support is included)
  • [GarminMapKeys.WaypointHighlight]: MapWaypointHighlightLayer
  • [MapSystemKeys.TextLayer]: MapCullableTextLayer

Controllers:

  • [MapSystemKeys.WaypointRenderer]: MapSystemCustomController (handles initialization and updating of the waypoint renderer)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
includeLinebooleanWhether to include support for drawing a line from the highlighted waypoint to the player airplane.
configure(builder: MapWaypointDisplayBuilder) => voidA function used to configure the display and styling of highlighted waypoint icons and labels.
lineOptions?Readonly<WaypointHighlightLineOptions>Styling options for the waypoint highlight line. The default values are the same as for MapLineLayer, except the strokeDash property defaults to [5, 3, 2, 3]. Ignored if includeLine is false.
order?numberThe order to assign to the highlighted waypoint layers. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1153


waypointVisSettings

waypointVisSettings<MapBuilder>(mapBuilder, settingManager, options?): MapBuilder

Configures a map builder to bind the visibility of waypoints to user settings.

Requires the modules defined in MapWaypointsVisControllerModules.

Adds the controller [GarminMapKeys.WaypointsVisibility]: MapWaypointsVisController.

Type parameters

NameType
MapBuilderextends MapSystemBuilder<MapWaypointsVisControllerModules, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
settingManagerUserSettingManager<Partial<MapWaypointVisUserSettings>>A setting manager containing the user settings controlling waypoint visibility.
options?Readonly<MapWaypointsVisControllerOptions>Options with which to configure waypoint visibility.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:898


waypoints

waypoints<MapBuilder>(mapBuilder, configure, supportRunwayOutlines, settingManager?, order?): MapBuilder

Configures a map builder to generate a map which supports the display of waypoints located within the boundaries of the map's projected window. Waypoints displayed in this manner are rendered by a MapWaypointRenderer under the role MapWaypointRenderRole.Normal. Optionally binds the visibility of waypoints to user settings.

If a text layer has already been added to the builder, its order will be changed so that it is rendered above the waypoint layer. Otherwise, a text layer will be added to the builder after the waypoint layer.

Adds the following...

Context properties:

  • [MapSystemKeys.TextManager]: MapCullableTextLabelManager
  • [MapSystemKeys.WaypointRenderer]: MapWaypointRenderer
  • [GarminMapKeys.WaypointDisplayBuilder]: MapWaypointDisplayBuilder

Modules:

  • [MapSystemKeys.NearestWaypoints]: MapWaypointsModule
  • [GarminMapKeys.Range]: MapIndexedRangeModule (only if user settings are supported)

Layers:

  • [MapSystemKeys.NearestWaypoints]: MapWaypointsLayer
  • [MapSystemKeys.TextLayer]: MapCullableTextLayer

Controllers:

  • [MapSystemKeys.WaypointRenderer]: MapSystemCustomController (handles initialization and updating of the waypoint renderer)
  • [GarminMapKeys.WaypointsVisibility]: MapWaypointsVisController (only if user settings are supported)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
configure(builder: MapWaypointDisplayBuilder, context: MapSystemContext<any, any, any, any>) => voidA function used to configure the display and styling of waypoint icons and labels.
supportRunwayOutlinesbooleanWhether to support the rendering of airport runway outlines.
settingManager?UserSettingManager<Partial<MapWaypointVisUserSettings>>A setting manager containing the user settings controlling waypoint visibility. If not defined, waypoint visibility will not be bound to user settings.
order?numberThe order to assign to the waypoint layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:828


weatherOrientation

weatherOrientation<MapBuilder>(mapBuilder, nominalTargetOffsets?, nominalRangeEndpoints?, settingManager?): MapBuilder

Configures a map builder to generate a map which supports different weather map orientations, as enumerated by MapOrientation. Each orientation defines a different rotation behavior, target offset, and range endpoints.

Adds the following...

Context properties:

  • [MapSystemKeys.RotationControl]: ResourceModerator<void>
  • [GarminMapKeys.OrientationControl]: ResourceModerator<void>
  • [GarminMapKeys.DesiredOrientationControl]: ResourceModerator<void>

Modules:

  • [MapSystemKeys.Rotation]: MapRotationModule
  • [GarminMapKeys.Orientation]: MapOrientationModule
  • [GarminMapKeys.Range]: MapIndexedRangeModule

Controllers:

  • [MapSystemKeys.Rotation]: MapRotationController
  • [GarminMapKeys.OrientationRTR]: MapOrientationRTRController
  • [GarminMapKeys.Orientation]: MapOrientationModeController
  • [GarminMapKeys.DesiredOrientation]: MapDesiredOrientationController
  • [GarminMapKeys.OrientationSettings]: WeatherMapOrientationSettingsController (only with user setting support)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<any, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
nominalTargetOffsets?Partial<Record<MapOrientation, Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>>>The nominal projected target offsets defined by each orientation. Each target offset is a 2-tuple [x, y], where each component is expressed relative to the width or height of the map's projected window, excluding the dead zone. If an orientation does not have a defined offset, it will default to [0, 0].
nominalRangeEndpoints?Partial<Record<MapOrientation, Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">> | Subscribable<Readonly<Omit<Float64Array, "set" | "sort" | "copyWithin">>>>>The nominal range endpoints defined by each orientation. Each set of range endpoints is a 4-tuple [x1, y1, x2, y2], where each component is expressed relative to the width or height of the map's projected window, excluding the dead zone. If an orientation does not have defined range endpoints, it will default to [0.5, 0.5, 0.5, 0] (center to top-center).
settingManager?UserSettingManager<Partial<WeatherMapOrientationSettingsControllerSettings>>A setting manager containing user settings used to control the map orientation. If not defined, map orientation will not be bound to user settings.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:450


windVector

windVector<MapBuilder>(mapBuilder, dataProvider, settingManager?, order?): MapBuilder

Configures a map builder to generate a map with a wind vector, and optionally binds the display options of the vector to user settings.

Adds the following...

Modules:

  • [GarminMapKeys.WindVector]: MapWindVectorModule

Layers:

  • [GarminMapKeys.WindVector]: MapWindVectorLayer

Controllers:

  • [GarminMapKeys.WindVector]: MapWindVectorController (only if user settings are supported)

Type parameters

NameType
MapBuilderextends MapSystemBuilder<Omit<MapTrackVectorLayerModules, "trackVector">, any, any, any>

Parameters

NameTypeDescription
mapBuilderMapBuilderThe map builder to configure.
dataProviderWindDataProviderA provider of wind data.
settingManager?UserSettingManager<Partial<MapWindVectorUserSettings>>A setting manager containing user settings used to control the wind vector. If not defined, the wind vector will not be bound to user settings.
order?numberThe order to assign to the wind vector layer. Layers with lower assigned order will be attached to the map before and appear below layers with greater assigned order values. Defaults to the number of layers already added to the map builder.

Returns

MapBuilder

The map builder, after it has been configured.

Defined in

src/garminsdk/components/map/GarminMapBuilder.tsx:1904