質問

「NAD 1983 StatePlanemichigan South FIPS 2113 Feet」(別名) に X、Y 座標の大規模なデータセットがあります。 ESRI 102690)。緯度経度のポイントに変換したいと思います。

理論的には、これは何かです プロジェクト を処理するように構築されていますが、ドキュメントは私に手がかりを与えてくれませんでした。ドキュメントでは、はるかに複雑なケースについて説明しているようです。

を使ってみました Pythonインターフェース, 、 そのようです:

from pyproj import Proj
p = Proj(init='esri:102690')
sx = 13304147.06410000000 #sample points
sy = 288651.94040000000
x2, y2 = p(sx, sy, inverse=True)

しかし、それは非常に不正確な出力を生成します。

Javascript ライブラリもありますが、最大 50,000 ポイントを処理する必要があるため、それは適切ではないようです。


私にとってうまくいったこと:

というファイルを作成しました ptest 次のように、各ペアを独自の行に配置し、x 座標と y 座標をスペースで区切ります。

13304147.06410000000 288651.94040000000
...

次に、そのファイルをコマンドに入力し、結果を出力ファイルにパイプ処理しました。

$>cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 
+lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 
+datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to 
+proj=latlon ptest > out.txt
役に立ちましたか?

解決

再投影する必要があるだけで、テキスト ファイルに対してデータマイニングを実行できる場合は、好きなものを使用してください http://spatialreference.org/ref/esri/102690/ 参考として。

たとえば、Proj4 を使用してシェル/cmd ファイルに保存し、proj4 (Linux/Windows バージョンが利用可能) で入力ファイルを呼び出します。データセットのサイズは問題ありません。

cs2cs +proj=latlong +datum=NAD83 +to +proj=utm +zone=10  +datum=NAD27 -r <<EOF
cs2cs -f %.16f +proj=utm +zone=20N +to +proj=latlon - | awk '{print $1 " " $2}

したがって、あなたの場合は次のようなものになります:

cs2cs -f %.16f +proj=lcc +lat_1=42.1 +lat_2=43.66666666666666 +lat_0=41.5 +lon_0=-84.36666666666666 +x_0=4000000 +y_0=0 +ellps=GRS80 +datum=NAD83 +to_meter=0.3048006096012192 +no_defs +zone=20N +to +proj=latlon

http://trac.osgeo.org/proj/wiki/man_cs2cs

http://trac.osgeo.org/proj/

他のヒント

TXT、CSV、または XLS ファイルに座標がある場合は、CTRL+C を実行して、それらの座標を次の場所に挿入できます。 http://cs2cs.mygeodata.eu ここで、適切な入力座標系と目的の出力座標系を設定できます。さまざまな形式で数千の座標を挿入することが可能です...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top