2016-08-11 3 views
1

Я использую Java библиотеки proj.4, которые могут быть found here И я в значительной степени уверены в том, как я могу реализовать код, который выглядит, как это в Proj.4JS:Proj.4 Java - преобразование координат из WGS84 в EPSG4141?

// include the library 
<script src="lib/proj4js-combined.js"></script> //adjust the path for your server 
               //or else use the compressed version 
// creating source and destination Proj4js objects 
// once initialized, these may be re-used as often as needed 
var source = new Proj4js.Proj('EPSG:4326'); //source coordinates will be in Longitude/Latitude, WGS84 
var dest = new Proj4js.Proj('EPSG:4141');  //destination coordinates in meters, global spherical mercators projection, see http://spatialreference.org/ref/epsg/3785/ 


// transforming point coordinates 
var p = new Proj4js.Point(-76.0,45.0); //any object will do as long as it has 'x' and 'y' properties 
Proj4js.transform(source, dest, p);  //do the transformation. x and y are modified in place 

//p.x and p.y are now EPSG:3785 in meters 

Я новичок в все объекты проекции, и я действительно хочу знать, что я делаю. Мне нужно преобразовать мою систему координат из WGS84 в EPSG: 4141, но Proj.4 Java-библиотека вообще не документирована, и я не могу точно узнать, как ее использовать.

Кто-нибудь знает об этом?

ответ

1

К сожалению, библиотека до сих пор не очень хорошо документированы так для тех, кто все еще ищет решения:

CRSFactory factory = new CRSFactory(); 
CoordinateReferenceSystem srcCrs = factory.createFromName("EPSG:4326"); 
CoordinateReferenceSystem dstCrs = factory.createFromName("EPSG:4141"); 

BasicCoordinateTransform transform = new BasicCoordinateTransform(srcCrs, dstCrs); 

// Note these are x, y so lng, lat 
ProjCoordinate srcCoord = new ProjCoordinate(-76.0, 45.0); 
ProjCoordinate dstCoord = new ProjCoordinate(); 

// Writes result into dstCoord 
transform.transform(srcCoord, dstCoord); 

Исходный код на https://github.com/Proj4J/proj4j, если вам нужно, чтобы понять чего-либо.