コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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;
        }
コード例 #4
0
        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);
        }