public TransitStopIconWrapper(TransitStop stop) { if (stop.Path == null) { Element = new MapIcon() { Location = stop.Position.ToGeopoint(), NormalizedAnchorPoint = new Windows.Foundation.Point(0.5, 0.5), CollisionBehaviorDesired = MapElementCollisionBehavior.RemainVisible, ZIndex = 5 }; } else { Element = new MapPolygon() { Path = new Windows.Devices.Geolocation.Geopath(GooglePolylineConverter.Decode(stop.Path).Select(ll => ll.ToBasicGeoposition())), StrokeColor = Colors.Black, FillColor = Colors.DarkGray, StrokeThickness = 2, ZIndex = 4 }; } AttachedProperties.SetElementType(Element, "TransitStop"); AttachedProperties.SetElementID(Element, stop.ID); Stop = stop; SetStopSize(); }