LazarilloMarkerOptions
class LazarilloMarkerOptions(fromJSONObject: JSONObject)Provides marker customization options parsed from a JSON configuration object.
This class encapsulates all the visual and positional properties needed to create a marker on a LazarilloMap, including geographic position, icon selection, text styling, and floor awareness for indoor maps. Properties are extracted from a JSONObject during construction, with sensible defaults applied when values are not provided.
The only required JSON property is "coordinate" (containing "lat" and "lng"). All other properties are optional and fall back to their default values.
See also
| LazarilloMapMarker |
| LazarilloMap |
Throws
| InvalidArgumentsError | If the required "coordinate" property is missing or malformed. |
Constructors
LazarilloMarkerOptions | constructor(fromJSONObject: JSONObject ) |
Properties
borderColor
var borderColor: String?CSS-style hex color string for a background drawn behind the marker icon.
coordinate
var coordinate: LatLngTypes: LatLng
Geographic coordinate where the marker is placed on the map. Required.
draggable
var draggable: BooleanWhether the marker can be dragged by the user. Defaults to false.
floorId
var floorId: String?Identifier of the indoor floor this marker belongs to. Null indicates an outdoor or floor-independent marker. Used for floor-based visibility filtering.
icon
var icon: String?Name of the icon image to use for the marker. Must match a key registered in MapConstants.defaultMarkerIcons or a custom image added to the map style. Null uses no icon.
iconColor
var iconColor: String?CSS-style hex color string to tint the marker icon (e.g., "#FF0000"). Applied as a PorterDuff color filter on the bitmap.
iconCornerRadius
var iconCornerRadius: Float?Corner radius for the icon shape: -1 = circle, 0 = square, >0 = rounded rectangle with that radius.
iconSize
var iconSize: Float?Scaling factor for the marker icon. 1.0 is the original size.
isFlat
var isFlat: BooleanWhether the marker lies flat against the map surface instead of being upright (billboard). Defaults to false.
opacity
var opacity: FloatOpacity of the marker icon, from 0.0 (fully transparent) to 1.0 (fully opaque). Defaults to 1.0.
snippet
var snippet: StringSecondary text label used as a fallback when title is empty.
textAnchor
var textAnchor: String?Anchor position for the text label relative to the marker (e.g., "top", "bottom", "center").
textColor
var textColor: String?CSS-style color string for the marker text label (e.g., "#FF0000").
textFont
var textFont: String?Font family name for the marker text label.
textHaloBlur
var textHaloBlur: Float?Blur radius in pixels for the text halo effect.
textHaloColor
var textHaloColor: String?CSS-style color string for the text halo (outline) effect.
textHaloWidth
var textHaloWidth: Float?Width in pixels of the text halo (outline) around the label.
textOffset
var textOffset: Array<Float>?Offset of the text label from the marker anchor, as [x, y] in ems. Defaults to [0f, 1.5f] when text is displayed.
textSize
var textSize: Float?Font size in pixels for the marker text label. Defaults to 12f when text is displayed.
title
var title: StringPrimary text label displayed alongside the marker. Falls back to snippet if empty.
Functions
getMarkerOptions
fun getMarkerOptions(): SymbolOptionsTypes: SymbolOptions