Packages | Classes
Package net.sf.geographiclib

Packages

package  test
 

Classes

class  Accumulator
 
class  Constants
 
class  Geodesic
 
class  GeodesicData
 
class  GeodesicLine
 
class  GeodesicMask
 
class  GeographicErr
 
class  GeoMath
 
class  Gnomonic
 
class  GnomonicData
 
class  Pair
 
class  PolygonArea
 
class  PolygonResult
 

Detailed Description

Implementation of the net.sf.geographiclib.Accumulator class

Copyright (c) Charles Karney (2013) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.Constants class

Copyright (c) Charles Karney (2013) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.Geodesic class

Copyright (c) Charles Karney (2013-2017) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GeodesicData class

Copyright (c) Charles Karney (2013) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GeodesicLine class

Copyright (c) Charles Karney (2013-2017) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GeodesicMask class

Copyright (c) Charles Karney (2013-2014) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GeographicErr class

Copyright (c) Charles Karney (2013) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GeoMath class

Copyright (c) Charles Karney (2013-2017) charl.nosp@m.es@k.nosp@m.arney.nosp@m..com and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.Gnomonic class

Copyright (c) BMW Car IT GmbH (2014-2017) sebas.nosp@m.tian.nosp@m..matt.nosp@m.heis.nosp@m.@bmw-.nosp@m.cari.nosp@m.t.de and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Implementation of the net.sf.geographiclib.GnomonicData class

Copyright (c) BMW Car IT GmbH (2014-2016) sebas.nosp@m.tian.nosp@m..matt.nosp@m.heis.nosp@m.@bmw-.nosp@m.cari.nosp@m.t.de and licensed under the MIT/X11 License. For more information, see https://geographiclib.sourceforge.io/

Geodesic routines from GeographicLib implemented in Java

Author
Charles F. F. Karney (charl.nosp@m.es@k.nosp@m.arney.nosp@m..com)
Version
1.49

The documentation for other versions is available at https://geographiclib.sourceforge.io/m.nn/java for versions numbers m.nn ≥ 1.31.

Licensed under the MIT/X11 License; see LICENSE.txt.

Abstract

GeographicLib-Java is a Java implementation of the geodesic algorithms from GeographicLib. This is a self-contained library which makes it easy to do geodesic computations for an ellipsoid of revolution in a Java program. It requires Java version 1.2 or later.

Downloading

Download either the source or the pre-built package as follows:

Obtaining the source

GeographicLib-Java is part of GeographicLib which available for download at

as either a compressed tar file (tar.gz) or a zip file. After unpacking the source, the Java library can be found in GeographicLib-1.49/java. (This library is completely independent from the rest of GeodegraphicLib.) The library consists of the files in the src/main/java/net/sf/geographiclib subdirectory.

The pre-built package

GeographicLib-Java is available as a pre-built package on Maven Central (thanks to Chris Bennight for help on this deployment). So, if you use maven to build your code, you just need to include the dependency

<dependency>
<groupId>net.sf.geographiclib</groupId>
<artifactId>GeographicLib-Java</artifactId>
<version>1.49</version>
</dependency>

in your

pom.xml

.

Sample programs

Included with the source are 3 small test programs

Here, for example, is

Inverse.java
// Solve the inverse geodesic problem.
// This program reads in lines with lat1, lon1, lat2, lon2 and prints
// out lines with azi1, azi2, s12 (for the WGS84 ellipsoid).
import java.util.*;
import net.sf.geographiclib.*;
public class Inverse {
public static void main(String[] args) {
try {
Scanner in = new Scanner(System.in);
double lat1, lon1, lat2, lon2;
while (true) {
lat1 = in.nextDouble(); lon1 = in.nextDouble();
lat2 = in.nextDouble(); lon2 = in.nextDouble();
GeodesicData g = Geodesic.WGS84.Inverse(lat1, lon1, lat2, lon2);
System.out.println(g.azi1 + " " + g.azi2 + " " + g.s12);
}
}
catch (Exception e) {}
}
}

Compiling and running a sample program

Three difference ways of compiling and running

Inverse.java

are given. These differ in the degree to which they utilize maven to manage your Java code and its dependencies. (Thanks to Skip Breidbach for supplying the maven support.)

Without using maven

Compile and run as follows

cd inverse/src/main/java
javac -cp .:../../../../src/main/java Inverse.java
echo -30 0 29.5 179.5 | java -cp .:../../../../src/main/java Inverse 

On Windows, change this to

cd inverse\src\main\java
javac -cp .;../../../../src/main/java Inverse.java
echo -30 0 29.5 179.5 | java -cp .;../../../../src/main/java Inverse 

Using maven to package GeographicLib

Use maven to create a jar file by running (in the main java directory)

mvn package 

(Your first run of maven may take a long time, because it needs to download some additional packages to your local repository.) Then compile and run Inverse.java with

cd inverse/src/main/java
javac -cp .:../../../../target/GeographicLib-Java-1.49.jar Inverse.java
echo -30 0 29.5 179.5 |
  java -cp .:../../../../target/GeographicLib-Java-1.49.jar Inverse 

Using maven to build and run@code Inverse.java @endcode

The sample code includes a

pom.xml

which specifies GeographicLib-Jave as a dependency. You can build and install this dependency by running (in the main java directory)

mvn install 

Alternatively, you can let maven download it from Maven Central. You can compile and run Inverse.java with

cd inverse
mvn compile
echo -30 0 29.5 179.5 | mvn -q exec:java 

Using the library

The important classes are

inverse
const EIGEN_DEVICE_FUNC InverseReturnType inverse() const
Definition: ArrayCwiseUnaryOps.h:411
e
Array< double, 1, 3 > e(1./3., 0.5, 2.)
GeographicLib
Namespace for GeographicLib.
Definition: JacobiConformal.hpp:15
Direct
Definition: Direct.java:7
net.sf
main
int main(int argc, char **argv)
Definition: cmake/example_cmake_find_gtsam/main.cpp:63
net
Planimeter
Definition: Planimeter.java:14
net.sf.geographiclib
Definition: Accumulator.java:8
conf.version
version
Definition: gtsam/3rdparty/GeographicLib/python/doc/conf.py:67
g
void g(const string &key, int i)
Definition: testBTree.cpp:41
args
Definition: pytypes.h:2210
Inverse
Definition: Inverse.java:13


gtsam
Author(s):
autogenerated on Fri Nov 1 2024 03:53:09