PROJクイックスタート¶
PROJは、地理的な経緯度座標をデカルト座標に(またはその逆に)変換する標準的なUnixのフィルタ関数であり、ソフトウェア開発者が自身のソフトウェアに座標変換を含めるためのC APIです。
PROJ¶
注釈
何を学べますか? このセクションでは、PROJツールの使用方法を学習します。
PROJとは?¶
PROJとinvprojは、選択可能なデカルト関数を使用して、投影データとの間で地図データの順変換と逆変換を行います。
proj概要¶
proj [ -bcCeEfiIlmorsStTvVwW [ args ] ] [ +args ] file[s]
invproj [ -bcCeEfiIlmorsStTwW [ args ] ] [ +args ] file[s]
これらのコマンドについては、最新バージョンの proj ドキュメント で詳しく説明しています。
PROJの例¶
次のスクリプト
proj +proj=utm +lon_0=112w +ellps=clrk66
-r <<EOF
45d15'33.1" 111.5W
45d15.551666667N -111d30
+45.25919444444 111d30'000w
EOF
は、経度112Wに最も近い標準的なUTM中心子午線を使用して、UTM投影を実行します。この例の地理的値は、DMS入力の様々な形式の例として、等価であり、意味があります。x-y アウトプットデータは、3行で表示され:
460769.27 5011648.45
cs2cs¶
注釈
何を学べますか? このセクションでは、cs2csツールの使用方法を学習します。
cs2csとは?¶
cs2cs
は、一連の入力点上で、変換元と変換先の地図作成座標系間の変換を行います。座標系変換には、投影座標と地理座標との間の平行移動や、データムシフトの適用が含まれます。
cs2cs概要¶
cs2cs [ -eEfIlrstvwW [ args ] ] [ +opts[=arg] ] [ +to [+opts[=arg]] ] file[s]
これらのコマンドについては、最新版の cs2cs ドキュメント を参照してください。
cs2csの例¶
次のスクリプト
cs2cs +proj=latlong +datum=NAD83
+to +proj=utm +zone=10 +datum=NAD27
-r <<EOF
45d15'33.1" 111.5W
45d15.551666667N -111d30
+45.25919444444 111d30'000w
EOF
は、zone10を選択した状態で、UTM投影のNAD83地理座標をNAD27座標に変換します。この例の地理的値は、DMS入力の様々な形式の例として、等価であり、意味があります。x-y出力データは、次の3行で表示されます:
1402285.99 5076292.42 0.000
geod¶
注釈
何を学べますか? このセクションでは、geodツールの使用方法を学習します。
geod とは?¶
geod
(直接) と invgeod
(逆) は、測地線 ("Great Circle") 計算を実行します。この計算では、最初の点の緯度、経度、方位角、距離 (直接) 、または前後の方位角と最初と最後の点の間の距離 (逆) を指定します。結果は、 |f| < 1/50 (fは平坦化) の丸めに適しています。
invgeod
はすべてのプラットフォームで利用できるわけではありません。この場合、-Iオプションを指定してgeodを呼び出してください。
geod概要¶
geod +ellps=<ellipse> [ -afFIlptwW [ args ] ] [ +args ] file[s]
invgeod +ellps=<ellipse> [ -afFIlptwW [ args ] ] [ +args ] file[s]
これらのコマンドについては、最新バージョンの proj ドキュメント で詳しく説明しています。
geodの例¶
次のスクリプトは、測地線の方位角と距離を計算します。マサチューセッツ州ボストンからオレゴン州ポートランドまでの法定マイル:
geod +ellps=clrk66 <<EOF -I +units=us-mi
42d15'N 71d07'W 45d31'N 123d41'W
EOF
結果は次のようになります:
-66d31'50.141" 75d39'13.083" 2587.504
ここで、最初の2つの値は、ボストンからポートランドまでの方位角、ポートランドからボストンまでの背面方位角、その後が距離です。
前方測地線を使用する例として、ボストンの位置を使用し、方位角と距離でポートランドのロケーションを決定する方法を示した事例:
geod +ellps=clrk66 <<EOF +units=us-mi
42d15'N 71d07'W -66d31'50.141" 2587.504
EOF
つぎのようになります:
45d31'0.003"N 123d40'59.985"W 75d39'13.094"
注釈
距離の値に精度がないと、ポートランドのロケーションの精度が低下します。