私はレーダーから多くの座標を取得するが、これらの座標はGoogleマップの座標とほとんど同じであるが、私は会社に尋ねた。私はアルバーの投影上の座標を得るために、私は次の操作を行う必要があります:あなたは、その後2 CoordinateReferenceSystemを作成することができます経度と緯度をイメージに変換するX、Yピクセルの座標をAlberの投影に合わせる
(すなわち 座標系)、デフォルトとして1(ある経度/緯度を設定)、 をWKT文字列(投影されるx/y)でもう一方を設定します。その後、 は、簡単に2つのMathTransformを作成して の両方の方向に変換できます。
これはアルバーの投影にOGC WKTです:私は何を得るからそう
PROJCS["unnamed",
GEOGCS["WGS 84",
DATUM["WGS_1984",
SPHEROID["WGS 84",6378137,298.2572235629972,
AUTHORITY["EPSG","7030"]],
AUTHORITY["EPSG","6326"]],
PRIMEM["Greenwich",0],
UNIT["degree",0.0174532925199433],
AUTHORITY["EPSG","4326"]],
PROJECTION["Albers_Conic_Equal_Area"],
PARAMETER["standard_parallel_1",31.996308],
PARAMETER["standard_parallel_2",33.996308],
PARAMETER["latitude_of_center",32.996308],
PARAMETER["longitude_of_center",35.415901],
PARAMETER["false_easting",0],
PARAMETER["false_northing",0],
UNIT["metre",1,AUTHORITY["EPSG","9001"]]]
、私はアルバーの投影地図画像上に表示するようにそのWKTの投影に長い/緯度から変換する必要があります。 、それが理由座標系を間違っ源の可能性があり、今
(-38422.86847540497, 111410.0483012808, NaN)
:
だからGeoToolsに、私は次のコードを使用:
CoordinateReferenceSystem source = CRS.decode("EPSG:4326");
CoordinateReferenceSystem target = CRS.parseWKT("PROJCS[\"unnamed\", GEOGCS[\"WGS 84\", DATUM[\"WGS_1984\", SPHEROID[\"WGS 84\",6378137,298.2572235629972, AUTHORITY[\"EPSG\",\"7030\"]], AUTHORITY[\"EPSG\",\"6326\"]], PRIMEM[\"Greenwich\",0], UNIT[\"degree\",0.0174532925199433], AUTHORITY[\"EPSG\",\"4326\"]], PROJECTION[\"Albers_Conic_Equal_Area\"], PARAMETER[\"standard_parallel_1\",31.996308], PARAMETER[\"standard_parallel_2\",33.996308], PARAMETER[\"latitude_of_center\",32.996308], PARAMETER[\"longitude_of_center\",35.415901], PARAMETER[\"false_easting\",0], PARAMETER[\"false_northing\",0], UNIT[\"metre\",1,AUTHORITY[\"EPSG\",\"9001\"]]]");
MathTransform transform = CRS.findMathTransform(source, target, true);
Coordinate c = JTS.transform(new Coordinate(34, 35), new Coordinate(), transform);
System.out.println(c.toString());
をそして、それは私が手に出力ですしかし、デフォルトでlong/latシステムの意味はどうでしたか?
これを解決しても、マップ画像にこれらのポイントを表示するにはどうすればよいですか?私はイメージの幅/高さを知っていなければならないのですか?