(no commit message)
authorerik <erik@77661180-640e-0410-b3a8-9f9b13e6d0e0>
Thu, 3 Aug 2006 18:45:13 +0000 (18:45 +0000)
committererik <erik@77661180-640e-0410-b3a8-9f9b13e6d0e0>
Thu, 3 Aug 2006 18:45:13 +0000 (18:45 +0000)
gps/src/org/wamblee/gps/coordinates/CoordinateSystem.java [deleted file]
gps/src/org/wamblee/gps/coordinates/Coordinates.java [deleted file]
gps/src/org/wamblee/gps/coordinates/Point.java [deleted file]
gps/src/org/wamblee/gps/coordinates/ReferenceCoordinateSystem.java [deleted file]
gps/src/org/wamblee/gps/coordinates/SphericalCoordinateSystem.java [deleted file]
gps/src/org/wamblee/gps/coordinates/Wgs84CoordinateSystem.java [deleted file]

diff --git a/gps/src/org/wamblee/gps/coordinates/CoordinateSystem.java b/gps/src/org/wamblee/gps/coordinates/CoordinateSystem.java
deleted file mode 100644 (file)
index e88d483..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */ 
-
-package org.wamblee.gps.coordinates;
-
-
-/**
- * Represents a coordinate system. 
- */
-public interface CoordinateSystem {
-    
-    /**
-     * Conversion to a reference coordinate system.
-     * @param aCoordinates Coordinates. 
-     * @return Coordinates in the reference system. 
-     */
-    Coordinates toReferenceSystem(Coordinates aCoordinates);
-}
diff --git a/gps/src/org/wamblee/gps/coordinates/Coordinates.java b/gps/src/org/wamblee/gps/coordinates/Coordinates.java
deleted file mode 100644 (file)
index b1fc926..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */ 
-
-package org.wamblee.gps.coordinates;
-
-/**
- * Coordinates in some 3-dimensional coordinate system.  
- */
-public class Coordinates {
-
-    private double _x1; 
-    private double _x2; 
-    private double _x3; 
-    
-    /**
-     * Constructs the coordinates. 
-     * @param aX1 First coordinate. 
-     * @param aX2 Second coordinate. 
-     * @param aX3 Third coordinate. 
-     */
-    public Coordinates(double aX1, double aX2, double aX3) { 
-        _x1 = aX1; 
-        _x2 = aX2;
-        _x3 = aX3; 
-    }
-    
-    public double getX1() { 
-        return _x1; 
-    }
-    
-    public double getX2() { 
-        return _x2; 
-    }
-    
-    public double getX3() { 
-        return _x3; 
-    }
-}
diff --git a/gps/src/org/wamblee/gps/coordinates/Point.java b/gps/src/org/wamblee/gps/coordinates/Point.java
deleted file mode 100644 (file)
index 382bb5a..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */ 
-
-package org.wamblee.gps.coordinates;
-
-
-/**
- * Represents a point in some coordinate system. 
- */
-public class Point {
-    
-    private Coordinates _coordinates;
-    private CoordinateSystem _system; 
-    
-    /**
-     * Constructs the point. 
-     * @param aCoordinates Coordinates of the point in its coordinate system. 
-     * @param aSystem Coordinate system. 
-     */
-    public Point(Coordinates aCoordinates, CoordinateSystem aSystem) { 
-        _coordinates = aCoordinates; 
-        _system = aSystem; 
-    }
-    
-    /**
-     * Gets the coordinates in the point's coordinate system.  
-     * @return Coordinates.
-     */
-    public Coordinates getCoordinates() {
-        return _coordinates; 
-    }
-    
-    /**
-     * Gets the coordinate system. 
-     * @return Coordinate system. 
-     */
-    public CoordinateSystem getCoordinateSystem() { 
-        return _system; 
-    }
-   
-
-}
diff --git a/gps/src/org/wamblee/gps/coordinates/ReferenceCoordinateSystem.java b/gps/src/org/wamblee/gps/coordinates/ReferenceCoordinateSystem.java
deleted file mode 100644 (file)
index f3ed69c..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.wamblee.gps.coordinates;
-
-
-/**
- * Reference coordinate system which is the basis for defining metrics.
- * This is a Cartesian coordinate system.  
- */
-public class ReferenceCoordinateSystem implements CoordinateSystem {
-
-    /**
-     * Constructs the coordinate system. 
-     *
-     */
-    public ReferenceCoordinateSystem() {
-        // Empty
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.gpx.CoordinateSystem#toReferenceSystem(org.wamblee.gpx.Coordinates)
-     */
-    public Coordinates toReferenceSystem(Coordinates aCoordinates) {
-        return aCoordinates;
-    }
-
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.wamblee.gpx.CoordinateSystem#distance(org.wamblee.gpx.Coordinates,
-     *      org.wamblee.gpx.Coordinates)
-     */
-    private static double distance(Coordinates aC1, Coordinates aC2) {
-        return Math.sqrt(square(aC1.getX1() - aC2.getX1())
-                + square(aC1.getX2() - aC2.getX2())
-                + square(aC1.getX3() - aC2.getX3()));
-    }
-
-    private static double square(double x) {
-        return x * x;
-    }
-    
-    /**
-     * Computes the distance between two points in arbitrary coordinate systems. 
-     * @param aP1 First point. 
-     * @param aP2 Second point. 
-     * @return Distance. 
-     */
-    public static double distance(Point aP1, Point aP2) { 
-        return distance( aP1.getCoordinateSystem().toReferenceSystem(aP1.getCoordinates()), 
-                         aP2.getCoordinateSystem().toReferenceSystem(aP2.getCoordinates()));
-    }
-
-}
diff --git a/gps/src/org/wamblee/gps/coordinates/SphericalCoordinateSystem.java b/gps/src/org/wamblee/gps/coordinates/SphericalCoordinateSystem.java
deleted file mode 100644 (file)
index 3123230..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */ 
-
-package org.wamblee.gps.coordinates;
-
-import static java.lang.Math.PI;
-import static java.lang.Math.cos;
-import static java.lang.Math.sin;
-
-
-/**
- * Represents the coordinate system for a GPS measurement identified by
- * <ul>
- *   <li> x1: latitude in degrees </li>
- *   <li> x2: longitude in degrees </li>
- *   <li> x3: elevation in meters </li>
- * </ul>
- * This coordinate system models the earth as a sphere of a specific radius. 
- */
-public class SphericalCoordinateSystem implements CoordinateSystem {
-    /**
-     * Earth radius in meters. 
-     */
-    private static final double EARTH_RADIUS = 6371000; 
-
-    /* (non-Javadoc)
-     * @see org.wamblee.gpx.CoordinateSystem#toReferenceSystem(org.wamblee.gpx.Coordinates)
-     */
-    public Coordinates toReferenceSystem(Coordinates aCoordinates) {
-        double latrad = radians(aCoordinates.getX1()); 
-        double lonrad = radians(aCoordinates.getX2());
-        double coslat = cos(latrad); 
-        double sinlat = sin(latrad);
-        double coslon = cos(lonrad);
-        double sinlon = sin(lonrad); 
-        
-        double trueElevation = EARTH_RADIUS + aCoordinates.getX3(); 
-        return new Coordinates(trueElevation*coslat*coslon,
-                               trueElevation*coslat*sinlon,
-                               trueElevation*sinlat); 
-        
-    }
-    
-    private double radians(double aDegrees) { 
-        return aDegrees/180.0*PI; 
-    }
-}
diff --git a/gps/src/org/wamblee/gps/coordinates/Wgs84CoordinateSystem.java b/gps/src/org/wamblee/gps/coordinates/Wgs84CoordinateSystem.java
deleted file mode 100644 (file)
index 9ccabd8..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Copyright 2006 the original author or authors.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */ 
-
-package org.wamblee.gps.coordinates;
-
-import static java.lang.Math.PI;
-import static java.lang.Math.cos;
-import static java.lang.Math.sin;
-
-
-/**
- * Represents the WGS 84 coordinate system for a GPS measurement identified by
- * <ul>
- *   <li> x1: latitude in degrees </li>
- *   <li> x2: longitude in degrees </li>
- *   <li> x3: elevation in meters </li>
- * </ul>
- * WGS84 models the earth as an ellipse.
- */
-public class Wgs84CoordinateSystem implements CoordinateSystem {
-    /*
-     * Ellipse parameters
-     */
-    
-    /**
-     * The radius of the ellipse at the equator
-     */
-    private static final double A = 6378137.000;
-    
-    /**
-     * The distance of the North and South poles to the center of the ellipse. 
-     */
-    private static final double B = 6356752.314;  
-
-    /* (non-Javadoc)
-     * @see org.wamblee.gpx.CoordinateSystem#toReferenceSystem(org.wamblee.gpx.Coordinates)
-     */
-    public Coordinates toReferenceSystem(Coordinates aCoordinates) {
-        double latrad = radians(aCoordinates.getX1()); 
-        double lonrad = radians(aCoordinates.getX2());
-        double coslat = cos(latrad); 
-        double sinlat = sin(latrad);
-        double coslon = cos(lonrad);
-        double sinlon = sin(lonrad); 
-        
-        double r = A*B/Math.sqrt(B*B*coslat*coslat + A*A*sinlat*sinlat) + aCoordinates.getX3();
-        
-        return new Coordinates(r*coslat*coslon,
-                               r*coslat*sinlon,
-                               r*sinlat); 
-        
-    }
-    
-    private double radians(double aDegrees) { 
-        return aDegrees/180.0*PI; 
-    }
-}