Jump to: navigation, search

Map View


Revision as of 14:00, 21 February 2024 by CBR (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Similar to the map view on our other UBIK® clients, the Xamarin version displays Points of Interest (POIs) and other objects with Geo information on world maps.

Base Map

A world map is always displayed as the base layer of the map view. Depending on the "Map Type" setting (in the "AR" tab/category), different maps are used.

  • Standard (Open Street Map).
  • Satellite (Bing Maps).
  • Road (Bing Maps).

Some basic UI options commonly seen in map applications are available as well. For example, an indicator for the current device position, buttons to center around the current position, etc.

Customizable tile source for Bing road maps

Bing maps support many parameters and offer multiple servers to deliver map tiles. UBIK® allows the user to customize the BingRoadTilesUrl in a profile to achieve the following.

  • Use different servers to get the more reliable and suitable tiles service if necessary;
  • Specify a language/culture in which the tiles should be delivered;
  • Or even request different types of Bing map tiles.

By default (namely BingRoadTilesUrl is unspecified), the following URL pattern is used.

http://ak.dynamic.t{s}.tiles.virtualearth.net/comp/ch/{quadkey}?mkt=en-US&it=G,L&shading=hill&og=2290&n=z&token={k}

In this case, all tiles are delivered in English since that's requested through mkt=en-US. Please refer to supported culture codes from Microsoft when you want tiles in other languages.

IC Hint square.pngMicrosoft also provides a Chinese server URL pattern
https://dynamic.t{s}.tiles.ditu.live.com/comp/ch/{quadkey}?mkt=zh-CN&it=G,L&ur=CN&og=804&n=z&token={k}.
Just for clarification, it is also possible to request map tiles in Chinese using the default URL pattern as long as the correct culture code is specified, namely mkt=zh-Hans, mkt=zh-Hant or mkt=zh-CN.
But the dedicated one might deliver tiles that comply more to the local laws. Please choose one that you see fit.



UBIK Map Content

On the base map, UBIK® can display different kinds of content with Geo information.

Geo POIs

For each object carrying Geo coordinates, UBIK® displays a map pin on the map accordingly. The object's icon (if any) is also included in the map pin.

Like in the POI view, you can select or deselect POIs. The options available on selected POIs are described in section "Interact with POIs".

Map Overlays

Map Overlay
Map Overlay

Sometimes more detailed maps are needed for specific and smaller regions, e.g. a factory. Map overlays are such image based maps that are displayed on top of the base map. The placement of an overlay is determined by certain configurations on the overlay object.

Here's an article on how to Create Image Map Overlays.

Map Shapes

Map Shape
Map Shape

Map shapes can be considered as map overlays defined in a different data format.

  • Like map overlays, they are displayed on top of the base map;
  • Unlike map overlays, their display content as well as placements on the map are defined in shapefiles. Details can be found here.

Group, Building & Level

The way Geo POIs can be grouped and displayed accordingly in the map view is exactly the same as in the POI view. In addition, other types of map content like map overlays & shapes can also belong to groups, buildings or levels. The displaying of them follows the same rules.

Show on map

When you execute the NavigateToMapPageCommand from a context object (e.g. ContentViewModel, ContentPageViewModel, ContentListItemViewModel, etc.), the map view will be opened with that context object. This includes:

  • Entering necessary POI groups, buildings or building levels so that the context object is visible on the map;
  • Centering the map around the context object;
  • Selecting the POI for the context object automatically. (Once you start interacting with the map by e.g. entering another building, the selected states will most likely change.)
IC Attention.pngUnlike executing the NavigateToMapPageCommand from a place without a context object, doing so with one will additionally check the validity of that object, namely if it at least has geo information. If not, the command will be disabled.