X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=gps%2Fsrc%2Forg%2Fwamblee%2Fgps%2Ftrack%2FTrack.java;h=30e49f01d277ae457ef74d21563170254f05f3c9;hb=9584bb45a4731bbfccd810b586441d54ea660871;hp=2b8d9c778b9828d5eb107c63d8f970f81e6fd1ae;hpb=d4609528c385016f7247db7d486f6e9e51b5053e;p=utils diff --git a/gps/src/org/wamblee/gps/track/Track.java b/gps/src/org/wamblee/gps/track/Track.java index 2b8d9c77..30e49f01 100644 --- a/gps/src/org/wamblee/gps/track/Track.java +++ b/gps/src/org/wamblee/gps/track/Track.java @@ -16,15 +16,16 @@ package org.wamblee.gps.track; +import java.io.Serializable; import java.util.ArrayList; import java.util.List; -import org.wamblee.gps.coordinates.Point; +import org.wamblee.gps.geometry.Point; /** * Represents a GPS track. */ -public class Track { +public class Track implements Serializable { private List _points; @@ -51,6 +52,28 @@ public class Track { return _points.size(); } + public double getMinCoordinate(int i) { + if ( size() == 0 ) { + throw new IllegalArgumentException("empty track"); + } + double min = getPoint(0).getCoordinates().getX(i); + for (int j = 1; j < size(); j++) { + min = Math.min(min, getPoint(j).getCoordinates().getX(i)); + } + return min; + } + + public double getMaxCoordinate(int i) { + if ( size() == 0 ) { + throw new IllegalArgumentException("empty track"); + } + double max = getPoint(0).getCoordinates().getX(i); + for (int j = 1; j < size(); j++) { + max = Math.max(max, getPoint(j).getCoordinates().getX(i)); + } + return max; + } + /** * Gets the point at the given inded. * @param aIndex 0 <= aIndex < size()