Topics
All
MacOS
(Only)
Windows
(Only)
Linux
(Only, Not)
iOS
(Only, Not)
Components
Crossplatform Mac & Win
Server
Client
Old
Deprecated
Guides
Examples
Videos
New in version:
12.1
12.2
12.3
12.4
12.5
13.0
13.1
13.2
13.3
13.4
Statistic
FMM
Blog
Adds a point or pin to the map.
Component | Version | macOS | Windows | Linux | Server | iOS SDK |
MapView | 9.4 | ✅ Yes | ❌ No | ❌ No | ❌ No | ✅ Yes |
Parameter | Description | Example |
---|---|---|
MapView | The map view reference number. | $$MapView |
JSON | The JSON to describe the point. |
Returns identifier or error.
latitude | The latitude of the coordinate. |
longitude | The longitude of the coordinate. |
address | The address to lookup to find latitude or longitude. |
radius | The radius in meter. |
title | The title for the pin. |
subtitle | The subtitle for the item. |
color | The color as name or hex notation for the pin. |
identifier | The identifier to use. Can be empty to get new identifier auto assigned. |
image | The base64 encoded image data to use. |
imageWidth | Optional the image width to use. |
imageHeight | Optional the image height to use. |
clusteringIdentifier | Optionally an identifier that determines whether the annotation view participates in clustering. |
displayPriority | Optionally the display priority of this annotation view. Can be Required, High, Low or Default. |
Create MBS Pin on map with custom image:
Set Variable [ $json ; Value: "{ \"address\": \"Nickenich\", \"title\": \"Monkeybread Software\", \"subtitle\": \"MBS is here\", \"imageWidth\": 40, \"imageHeight\": 40 }" ]
# add image from container field to JSON
Set Variable [ $json ; Value: MBS( "JSON.AddStringToObject"; $json; "image"; Base64Encode ( MapView::image ) ) ]
# show
Set Variable [ $r ; Value: MBS( "MapView.AddPoint"; $$MapView; $JSON) ]
Adds simple pin for Hamburg:
Set Variable [ $r ; Value: MBS( "MapView.AddPoint"; $$MapView; "{ \"address\": \"Hamburg, Germany\", \"title\": \"Hamburg\"}") ]
Create circle of pins around current region:
# create some pins on a circle around a given point
Set Variable [ $centerLat ; Value: MBS( "MapView.GetCenterCoordinateLatitude"; $$MapView ) ]
Set Variable [ $centerLon ; Value: MBS( "MapView.GetCenterCoordinateLongitude"; $$MapView ) ]
#
# loop counting up from 1 to $count
Set Variable [ $count ; Value: 12 ]
Set Variable [ $index ; Value: 1 ]
If [ $index ≤ $count ]
Loop
# your script steps here
Set Variable [ $angle ; Value: 360 * ($index / 12) ]
Set Variable [ $a ; Value: $angle / 180 * Pi ]
#
# calculate new coordinates
Set Variable [ $fLat ; Value: ,005 ]
Set Variable [ $fLon ; Value: ,01 ]
Set Variable [ $lat ; Value: $centerLat + Sin($a) * $fLat ]
Set Variable [ $lon ; Value: $centerLon + Cos($a) * $fLon ]
#
Set Variable [ $json ; Value: "{}" ]
Set Variable [ $json ; Value: MBS( "JSON.AddNumberToObject"; $json; "latitude"; $lat ) ]
Set Variable [ $json ; Value: MBS( "JSON.AddNumberToObject"; $json; "longitude"; $lon ) ]
Set Variable [ $json ; Value: MBS( "JSON.AddNumberToObject"; $json; "clusteringIdentifier"; "pin") ]
Set Variable [ $r ; Value: MBS( "MapView.AddPoint"; $$MapView; $JSON ) ]
#
# next
Set Variable [ $index ; Value: $index + 1 ]
Exit Loop If [ $index > $count ]
End Loop
End If
This function is free to use.
Created 10th September 2019, last changed 9th April 2020