private BikeTouringGISGraphic CreateBikeTouringGISPointGraphic(wptType location, string nameAttribute, GraphicType typeOfPoint) { var mappoint = new MapPoint((double)location.lon, (double)location.lat, new SpatialReference(4326)); var g = new BikeTouringGISGraphic(mappoint, typeOfPoint) { ZIndex = 1 }; g.Attributes["name"] = nameAttribute; return(g); }
internal IEnumerable <BikeTouringGISGraphic> GetSplittedRoutes() { var result = new List <BikeTouringGISGraphic>(); var sr = new SpatialReference(4326); foreach (var splitRoute in _splitRoutes) { var geometry = CreateGeometryFromWayPoints(splitRoute); var graphic = new BikeTouringGISGraphic(geometry, GraphicType.SplitRoute); result.Add(graphic); } return(result); }
private void CreateGeometryAndExtentForTrackOrRoute(GeometryData data, GraphicType typeOfGraphic) { var builder = new PolylineBuilder(new SpatialReference(4326)); foreach (var wayPoint in data.Points) { builder.AddPoint(new MapPoint((double)wayPoint.lon, (double)wayPoint.lat)); } var esriGeometry = builder.ToGeometry(); data.Extent = esriGeometry.Extent; var geometry = new BikeTouringGISGraphic(esriGeometry, typeOfGraphic); geometry.Attributes["name"] = data.Name; geometry.Attributes["filename"] = data.FileName; data.Geometry = geometry; }
internal IEnumerable <BikeTouringGISGraphic> GetSplitPoints() { var result = new List <BikeTouringGISGraphic>(); var sr = new SpatialReference(4326); var cumulativeDistance = 0; var startPoint = _wayPoints[0]; for (int i = 0; i < _splitPoints.Count; i++) { var point = _splitPoints[i]; var mapPoint = new MapPoint((double)point.lon, (double)point.lat, sr); var graphic = new BikeTouringGISGraphic(mapPoint, GraphicType.SplitPoint); graphic.ZIndex = 1; cumulativeDistance += GetDistance(startPoint, point); startPoint = point; graphic.Attributes["distance"] = cumulativeDistance; result.Add(graphic); } return(result); }