public async void Initialize() { // initialize base map (for xServer internet) formsMap1.XMapUrl = "https://xmap-eu-n-test.cloud.ptvgroup.com/xmap/ws/XMap"; formsMap1.XMapCredentials = token; // add a new Shape Layer var layer = new ShapeLayer("MyShapes"); formsMap1.Layers.Add(layer); var startPoint = new Point(7.10052, 50.73117); var destPoint = new Point(9.99337, 53.54897); // set map view formsMap1.SetEnvelope(new MapRectangle(new[] { startPoint, destPoint }).Inflate(1.25)); // create start marker var startMarker = new Truck { Color = Colors.Blue, Width = 50, ToolTip = "Start" }; // set position and add to map ShapeCanvas.SetLocation(startMarker, startPoint); ShapeCanvas.SetZIndex(startMarker, 10); layer.Shapes.Add(startMarker); // create destination marker var destMarker = new Pyramid { Color = Colors.Green, Width = 50, Height = 50, ToolTip = "Destination", }; // set position and add to map ShapeCanvas.SetLocation(destMarker, destPoint); ShapeCanvas.SetZIndex(destMarker, 10); layer.Shapes.Add(destMarker); // calculate route, non-blocking var route = await Task.Run(() => CalcRoute(startPoint.Y, startPoint.X, destPoint.Y, destPoint.X)); // display route SetRoute(route, layer, Colors.Blue, "Route"); }