コード例 #1
0
ファイル: GpxAll.cs プロジェクト: FSofTlpz/GpxTool
        /// <summary>
        /// Bound in den Metadaten neu ermitteln
        /// </summary>
        public void RebuildMetadataBounds()
        {
            GpxBounds bounds = new GpxBounds();

            foreach (GpxWaypoint wp in Waypoints)
            {
                bounds.Union(wp);
            }
            foreach (GpxTrack track in Tracks)
            {
                foreach (GpxTrackSegment segment in track.Segments)
                {
                    foreach (GpxTrackPoint pt in segment.Points)
                    {
                        bounds.Union(pt);
                    }
                }
            }
            foreach (GpxRoute route in Routes)
            {
                foreach (GpxRoutePoint pt in route.Points)
                {
                    bounds.Union(pt);
                }
            }
            Metadata.Bounds = bounds;
        }
コード例 #2
0
ファイル: GpxBounds.cs プロジェクト: FSofTlpz/GpxTool
 public GpxBounds(GpxBounds b) : base()
 {
     MinLat = b.MinLat;
     MaxLat = b.MaxLat;
     MinLon = b.MinLon;
     MaxLon = b.MaxLon;
 }
コード例 #3
0
ファイル: GpxBounds.cs プロジェクト: FSofTlpz/GpxTool
 /// <summary>
 /// vereinigt, wenn möglich, die beiden Bereiche
 /// </summary>
 /// <param name="bounds"></param>
 /// <returns></returns>
 public bool Union(GpxBounds bounds)
 {
     if (!IsValid())
     {
         MinLat = bounds.MinLat;
         MaxLat = bounds.MaxLat;
         MinLon = bounds.MinLon;
         MaxLon = bounds.MaxLon;
     }
     else
     {
         if (bounds.IsValid())
         {
             UnionLatLon(ref MinLon, ref MaxLon, bounds.MinLon, bounds.MaxLon, 180);
             UnionLatLon(ref MinLat, ref MaxLat, bounds.MinLat, bounds.MaxLat, 360);
             return(true);
         }
     }
     return(false);
 }
コード例 #4
0
ファイル: GpxMetadata1_1.cs プロジェクト: FSofTlpz/GpxTool
 protected override void Init()
 {
     Time   = NOTVALID_TIME;
     Bounds = new GpxBounds();
 }