© 2018 Acme Atron-O-Matic, LLC
Contact Us
Privacy Policy
Notice to California Residents
Do Not Sell My Information

MyRadar Custom GeoJSON —  MyRadar Custom GeoJSON

MyRadar for Windows allows users to create custom geographic data visualizations right inside the app using GeoJSON. With this feature, you can easily create and import custom data layers, such as vehicles, infrastructure, work sites, restricted areas, flight paths, or other GIS information - basically anything that can be geo-encoded! For support questions on this feature, feel free to email [email protected] !


MyRadar Custom GeoJSON

MyRadar Custom GeoJSON

How to Use the Custom GeoJSON Layer

Start MyRadar and click the "Layers" icon on the right-hand side, it looks like a deck of cards. In the Layers menu, scroll to the bottom and look for the layer titled "Custom User Layer" and tap the "gear" icon on the right hand side. This will slide in a panel where you can enter the URL of your GeoJSON file. Enter the complete URL of your source file (ie, https://shapes.acmeaom.com/Starship.geojson ) and then click the "+" button to the right; this will add import your data source. Then click the left-arrow at the top of that panel to go back to the Layers menu and make sure the switch to enable the layer is set to "on"

Layers Menu
Layers MenuTap the "gear" icon to the right of "Custom User Layer"
Enter your custom layer URL
Enter your custom layer URLHit the "+" to the right, then enable the layer

Getting Started Creating Your Own Custom GeoJSON

Please refer to the Starship Launch Example document for a working example of supported GeoJSON.

Required Elements

Feature Collection

The GeoJSON file's root node is required to be a FeatureCollection node

{
   "type": "FeatureCollection",
   "features": 
      [
         // < Array of features to display ... >
      ]
}

Features Array (1 or more entries)

At least ONE feature must be included in the "features":[ ] array

Standard GeoJSON Geometry Structure

A GeoJSON object consists of the following components:

  1. type: The type of the GeoJSON object.
  2. geometry: The geometric object with its type and coordinates.
  3. properties: A JSON object containing additional information about the geographic feature.

For MyRadar the type must be a Feature.

{
   "type": "Feature",
   "geometry": {
      "type": "Point",
      "coordinates": [
         -88.991,
         38.271
      ]
   },
   "properties": {
      "object_type": "custom_data_overlay"
   }
}

NOTE: For each feature that is included in the array you must add, to the properties node of the feature, an object_type property and set the value to custom_data_overlay

The example above represents the minimal necessary GeoJSON required in a feature item to be drawn on the MyRadar Map. In this case it would place a square half-gray box just to the east of St. Louis, without any of the optional properties set or interactions available.

Currently Supported Geometry Types In Features

Currently MyRadar only supports the following Geometry types in a feature

1 Point

type is set to Point

coordinates is a single array of two float numbers, in the form of LONGITUDE, LATITUDE

"geometry": {
	"type": "Point",
	"coordinates": [ -88.991, 38.271 ]
}

2 LineString

type is set to LineString

coordinates is an array of one or more arrays, each containing two float numbers in the form of LONGITUDE, LATITUDE

"geometry": {
	"type": "LineString",
	"coordinates": [
		[-89.617, 39.042],
		[-89.525, 38.918],
		[-89.391, 38.735],
		[-89.212, 38.493],
		[-89.116, 38.381],
		[-88.991, 38.271]
	]
},

3 Polygon

type is set to Polygon

coordinates is an array of one or more arrays, which in turn are arrays of at least 3 arrays containing two float numbers in the form of LONGITUDE, LATITUDE, where the first array and the last array contain the exact same values for Longitude and Latitude

"geometry": {
	"type": "Polygon",
	"coordinates": [
		[
			[-97.2, 25.95],
			[-97.2, 26.0],
			[-95.7, 26.0],
			[-92.7, 25.71],
			[-93.11, 25.53],
			[-96.28, 25.86],
			[-97.2, 25.95]
		]
	]
}

For more details on standard GeoJSON and advanced usage, refer to the official GeoJSON specification: https://geojson.org/

Custom Parameters

MyRadar's specific GeoJSON implementation supports the following additional properties to help style the shapes that are drawn.

Required

  1. "object_type" : "custom_data_overlay": This property must be included and must be set to this value.

Other than the object_type all the properties are Optional

Standard Properties

Drawing Properties

Colors are 6 or 8 digit hex colors, e.g. "80808080" for 50% alpha gray. Alpha channel is optional. The channels are AARRGGBB, or RRGGBB. CSS color formatting is also accepted ("#abc", "#aabbcc", "rgba()").

  1. color: A hex code in the form of AARRGGBB that controls the alpha and color of the shape.
  2. strokeWidth: width in points for the shape's drawn outline or line path.
  3. strokeColor sets the stroke color. It defaults to the fill color~. Set to "00000000" (clear black) for no stroke.
    • NOTE: Currently this property is ignored / not working, but will be supported in a future release
  4. stroke-outline sets the stroke outline color, alpha is not supported
    • NOTE: Currently this property is ignored / not working, but will be supported in a future release
  5. stroke-outline-width sets the outline width
    • NOTE: Currently this property is ignored / not working, but will be supported in a future release

Interaction Properties

  1. hoverable: true / false - will cause a tooltip to display
    •  See Hover Properties for specification on setting of tooltip values
    • false is default if not added to properties
  2. tappable: true / false - will allow for mouse click or finger tap on object and will open details panel
    • See Tappable Properties for specification on setting detail values
    • false is default if not added to properties

Hover Properties

  1. hover_title: specifies the text that will be shown in the top line of the tooltip when the mouse cursor is hovered over the shape
    • Space X Ops in the example above
    • NOTE: in earlier releases this property was called display_label. That property name has been deprecated but is still supported for legacy users 
  2. hover_text:specifies the text that will be shown below the hover_title
    • RURD in the example above
    • NOTE: in earlier releases this property was called title. That property name has been deprecated but is still supported for legacy users 

Tappable Properties

  1. details_title: A short text title that gets shown when the object is clicked on.
    • Hazardous Operations in the example above
  2. details_subtitle: A subtitle for the text that gets shown when the object is clicked on.
    • Rocket Launching in the example above
  3. details_url: An URL link value that the user can clicked on in the details information to open in a browser
  4. details_url_text: Text to display for the URL link in the details information.
    • If not specified the url link will be added to the subtitle
    • Rocket Launching in the example above
  5. details_description: A long-form text description that displays in the panel when the object is clicked on.
    • This is a longform text description and can be any length but must be specified on a single line. by adding /n inline you can put blank lines in between sections.

Advanced Properties

Available For A Point Geometry Feature ONLY

Images

image_data: this is a base64 encoded string that represents a converted PNG image file.

With Point Geometry features, you may want to display something at that point on the map other than a simple box. MyRadar has some limited support for specifying an Icon to draw at the location specified in the feature. Currently this option is very limited in scope.

  1. The Image should derive from a PNG image
    • recommend white or black monochrome image, with transparent background
      • Colors may or may not render correctly on different maps
    • The image should be smaller than 150 KB in size
  2. The PNG image has to be converted to a Base64 encoded string

As an example consider this PNG file (shown here in Black)

When converted to a Base64 encoded string this is the result

iVBORw0KGgoAAAANSUhEUgAAADMAAAAzCAYAAAA6oTAqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH6QUHFRYJ1wE7ywAABVRJREFUaAXtmFuIVVUYx+ec46V0dBRtJqUGm4g0Ku2KFUUQEUQXFHso8sWeoix6662gAomo6KFMUokiArUIJdQGKgovFRReujjSQ5ihJTWVMzWemfH33+esxXeWZ5999j5nYB72gm9/99taa++99u7oyEc+A/kM5DOQz0A+A/kMNDUDhaasUhiNjY1dg/m1wMwUbmlMRzH+rFgsHk7jlMp2fHy8i0a2gCd8kOdvklwcFlgMBVl4As8hQX+hUFiVxT+tD3lm4XNB6DclFKTl1Qiwm2W/3vnC/wh93PEBnk8xV0uG3WnQ/kBv2Wkwy7GP6sR+BH6XANm31rBlmuBaka/AfsBvgomdJPR3OWPoxH2PzUpjPwK/rOXCwwAk0D2y3yWq4s2hXcjjc5/zgf4h1NfjsdtjfLbXs8ksI3CmRpQQ3/tNYc02Y1dnlOauyFy8dWylkazNkLNEA0fMJLxla8pEVxvZ54IKkyRVYOzvdf7QTa2MisX2UeN3Gn5BpiaqwboJEDayKW1ACkq9zar5O8n/q2no+TB33RMADl1KivGdwCXAbKCbx2EP2A9sDsIoRskLk4lO4kQvPPz/x/znZJfIosy1F98ucfj+DurjlfCv+LqD7tcCxzCe9IM6H7NN+JWh8inAe3T+gDWYzDT1HqXexYDOa9EWieqly20IV7riMRyG/gj4HNCSjgEtD3LcSJCnFYgcx0BPiE4xeojxhrMnxiq22jbH60nxFEI/4D+BudwbtJEg7h0uEXkOZQmN38cmxj4fA4WeEoNGuQvabz9v2CaC2JmeZjY99d7u6hWGvzXSQzxoFH/Cd1vHdtPkarkZ1USd/kwIHR1x9Angb3gSvcP+O9nuBiYiHvfNiybu3TTUq2ZuMsKdhp7s5IdM/hEVSWPqY7WO6nZbxa4KjgVAx++FwDABDgMnoCdskG8ecBUJOgHVdoidM6SE5B4tl8sbSqXSS+IZK/R49IOluq4ir70iXwMc9IYQ8H8BG4GLaq0bc7gm3jPEnAW8CvwR5PwF2XPIpisL9M1ODz0YNuO/Fl1JGG10DvUw+t+AG5x9EiZGw2aItQA4UC+Xk6HfC8wAFjuZcMN/AOifYTnX2AKRHQX89kJ/IfodyGrObdanWZoYeiVsIaa2VjSQ6bWhnHqJRwP9cogNwJmKpHrFyA869SsDvQgYcUroL6GXAkVgNvyTQNnoX68JHMNgH7syxHvYxROGfxnUAxShVc+7krsBr614Rjx4KNxm/vsapT8VQB/HPjqt2hqRP2sCn4DXD4iGA5t7jM/31hjdbqPbanWOxmavswnwp+E20z6cJsD5ShcAvIOlHTS8I/XzQkdzPV30VLzM+cdh7M5zzmDNeJQPPEP+Rhf30fe2sfEkdazXSfk/k0AHNv3O0ZhXQdHVyYwoItXIuBH2Q8fZRmbkO598zqUPYqDKaGL91yM2tfeD8+jo0DdQzSDmd9hv1ePtFZiGA5sBDMJVlO/jDR1bUBL7zZqKqwzynTYsvJ58lb+bENMRbLcG9Whs3ge0laIBvQL4p55tu2S8FNcSK/oHB55JvnU2NvxrgF6o0fDrjVB/GedX5Q49wvI95BgCnYLWsX0O8qVGrqVfDUjfypiK83piL3JByDkAr2//S8GVFUAJ/wWngducXSLGYSpN9oNjB/oy4A+riUETDIi1DDgZmxAF+p+AhQmhzlXjq39WLwCnwgTI9O655Vyv1iTE7QM+AEZtTvhh+M3gcAdFCf02S0pPAN0vevP2AkPAAZb5G/CEDXIuIbjOi3MBHTS/Jmezf3Mwz0c+A/kM5DOQz0A+A/kM1J2Bs7QY4YDkGEWVAAAAAElFTkSuQmCC==

Simply paste this string into value for the image_data property

Using the example from the Getting Started section above, for the Point feature just east of St. Louis

with the image_data specified, the point will now be plotted like

and here is the GeoJSON used in MyRadar to achieve that result

{
    "type": "FeatureCollection",
    "features":
    [
		{
            "type": "Feature",
			"geometry": {
				"type": "Point",
				"coordinates": [
					-88.991,
					38.271
				]
			},
            "properties": {
                "object_type": "custom_data_overlay",
				"image_data": "iVBORw0KGgoAAAANSUhEUgAAADMAAAAzCAYAAAA6oTAqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH6QUHFRYJ1wE7ywAABVRJREFUaAXtmFuIVVUYx+ec46V0dBRtJqUGm4g0Ku2KFUUQEUQXFHso8sWeoix6662gAomo6KFMUokiArUIJdQGKgovFRReujjSQ5ihJTWVMzWemfH33+esxXeWZ5999j5nYB72gm9/99taa++99u7oyEc+A/kM5DOQz0A+A/kMNDUDhaasUhiNjY1dg/m1wMwUbmlMRzH+rFgsHk7jlMp2fHy8i0a2gCd8kOdvklwcFlgMBVl4As8hQX+hUFiVxT+tD3lm4XNB6DclFKTl1Qiwm2W/3vnC/wh93PEBnk8xV0uG3WnQ/kBv2Wkwy7GP6sR+BH6XANm31rBlmuBaka/AfsBvgomdJPR3OWPoxH2PzUpjPwK/rOXCwwAk0D2y3yWq4s2hXcjjc5/zgf4h1NfjsdtjfLbXs8ksI3CmRpQQ3/tNYc02Y1dnlOauyFy8dWylkazNkLNEA0fMJLxla8pEVxvZ54IKkyRVYOzvdf7QTa2MisX2UeN3Gn5BpiaqwboJEDayKW1ACkq9zar5O8n/q2no+TB33RMADl1KivGdwCXAbKCbx2EP2A9sDsIoRskLk4lO4kQvPPz/x/znZJfIosy1F98ucfj+DurjlfCv+LqD7tcCxzCe9IM6H7NN+JWh8inAe3T+gDWYzDT1HqXexYDOa9EWieqly20IV7riMRyG/gj4HNCSjgEtD3LcSJCnFYgcx0BPiE4xeojxhrMnxiq22jbH60nxFEI/4D+BudwbtJEg7h0uEXkOZQmN38cmxj4fA4WeEoNGuQvabz9v2CaC2JmeZjY99d7u6hWGvzXSQzxoFH/Cd1vHdtPkarkZ1USd/kwIHR1x9Angb3gSvcP+O9nuBiYiHvfNiybu3TTUq2ZuMsKdhp7s5IdM/hEVSWPqY7WO6nZbxa4KjgVAx++FwDABDgMnoCdskG8ecBUJOgHVdoidM6SE5B4tl8sbSqXSS+IZK/R49IOluq4ir70iXwMc9IYQ8H8BG4GLaq0bc7gm3jPEnAW8CvwR5PwF2XPIpisL9M1ODz0YNuO/Fl1JGG10DvUw+t+AG5x9EiZGw2aItQA4UC+Xk6HfC8wAFjuZcMN/AOifYTnX2AKRHQX89kJ/IfodyGrObdanWZoYeiVsIaa2VjSQ6bWhnHqJRwP9cogNwJmKpHrFyA869SsDvQgYcUroL6GXAkVgNvyTQNnoX68JHMNgH7syxHvYxROGfxnUAxShVc+7krsBr614Rjx4KNxm/vsapT8VQB/HPjqt2hqRP2sCn4DXD4iGA5t7jM/31hjdbqPbanWOxmavswnwp+E20z6cJsD5ShcAvIOlHTS8I/XzQkdzPV30VLzM+cdh7M5zzmDNeJQPPEP+Rhf30fe2sfEkdazXSfk/k0AHNv3O0ZhXQdHVyYwoItXIuBH2Q8fZRmbkO598zqUPYqDKaGL91yM2tfeD8+jo0DdQzSDmd9hv1ePtFZiGA5sBDMJVlO/jDR1bUBL7zZqKqwzynTYsvJ58lb+bENMRbLcG9Whs3ge0laIBvQL4p55tu2S8FNcSK/oHB55JvnU2NvxrgF6o0fDrjVB/GedX5Q49wvI95BgCnYLWsX0O8qVGrqVfDUjfypiK83piL3JByDkAr2//S8GVFUAJ/wWngducXSLGYSpN9oNjB/oy4A+riUETDIi1DDgZmxAF+p+AhQmhzlXjq39WLwCnwgTI9O655Vyv1iTE7QM+AEZtTvhh+M3gcAdFCf02S0pPAN0vevP2AkPAAZb5G/CEDXIuIbjOi3MBHTS/Jmezf3Mwz0c+A/kM5DOQz0A+A/kM1J2Bs7QY4YDkGEWVAAAAAElFTkSuQmCC"
			}
        }
    ]
}

Sample of Use Cases

Power Transmission Lines
Power Transmission LinesWinds and lightning
Moving Trucks
Moving TrucksUpdated in Real Time
Notice to Mariners
Notice to MarinersSpaceX Starship Launch Restriction/Warning Zone

Recent Updates

  • 4/27/2023 Released to the public
  • 4/27/2023 Current bug exists preventing the base64-encoded image property from working properly. Normally, this property can be used to render custom icons for points (for example, drawing a truck instead of a square)
  • 5/8/2025 Updated instructions to clarify how to create custom GeoJSON and specify properties. base64-encoded image property bug has been fixed, restored instructions on how to use the property and best practices