もっと

経度/緯度(ポイントではない)座標のEPSGのタイプは何ですか?

経度/緯度(ポイントではない)座標のEPSGのタイプは何ですか?


長い/緯度座標の投影のタイプ(900913、4326など…)が何であるかを知りたいです。 (St_DumpPoints)LineStringをポイントにダンプし、そのポイントからlong / latを取得しようとすると、planet_osm_linesにクエリを実行しているときに、わずかな混乱が発生します。次のコードでは、900913と4326の投影法を使用して経度に変換しようとしました。 4326は正しい結果をもたらし、900913はポイント値と同じ結果をもたらすことに気づきました。

だから、私の質問は、4326のデフォルトの射影値はlong / latですか?つまり、スマートフォンやその他のデバイスなど、取得した長い/緯度のデータは4326の形式ですか?

さらに、(st_distance、st_closestPointなど)を計算しているときに、データベース900913ベースの座標との緯度/経度座標を900913投影に変更する必要がありますか?そのような:

ST_Transform(ST_SetSRID(ST_makePoint(long、lat)、4326)、900913);

コード:

osm =#select d.osm_id、d.name、st_x(st_transform(st_setsrid(da、900913)、900913))、st_y(da)from(SELECT osm_id、name、(ST_DumpPoints(st_astext(way)))。geom as FROM planet_osm_line limit 1000)as d; osm_id |名前| st_x | st_y ----------- + ------------------- + ------------ + ---- -------- 328454927 | | 9310610.35 | 3223602.19 328454927 | | 9310606.6 | 3223579.35 328454927 | | 9310597.74 | 3223554.21 328454927 | | 9310590.81 | 3223541.52 328454927 | | 9310591.28 | 3223530.75 328454927 | | 9310593.43 | 3223519.49 328454927 | | 9310593.43 | 3223495.79 osm =#select d.osm_id、d.name、st_x(st_transform(st_setsrid(da、900913)、4326))、st_y(da)from(SELECT osm_id、name、(ST_DumpPoints(st_astext(way)))。geom FROM planet_osm_line limit 1000)としてd; osm_id |名前| st_x | st_y ----------- + ------------------- + ----------------- -+ ------------ 328454927 | | 83.6386358188641 | 3223602.19 328454927 | | 83.6386021320409 | 3223579.35 328454927 | | 83.6385225413067 | 3223554.21 328454927 | | 83.6384602880575 | 3223541.52 328454927 | | 83.6384645101394 | 3223530.75 328454927 | | 83.638483823918 | 3223519.49 328454927 | | 83.638483823918 | 3223495.79

皆さんからのこれらの混乱について明確に理解しておくと非常に役立ちます。


1)(EPSG)4326の座標は、long / latであり、小数度です。 (SRID)900913の座標は東/北であり、メートル単位です。グーグルマップが(SRID)900913座標を実際に東/北のメートルであるときに長/緯度として表示するため、混乱が生じます。

2)多くの理由から、ST_Distanceまたは(SRID)900913座標で距離/長さを返す関数の使用は避けてください。まず、(SRID)900913はコンフォーマルではありません。 (コンフォーマル)メルカトル図法と横メルカトル図法の場合でも、距離と面積は、選択した真の縮尺の緯度と経度の近くでのみ保持されます。一般的なガイドは、全世界の地図投影法でST_Distanceを使用しないことです。

したがって、疑わしい場合は、測地線距離を返す(EPSG)4326座標のST_Distanceに固執するだけです。


何百もの事前定義された地理座標系(GCS)EPSGコードと、無限の数の潜在的なGCS文字列があります。最良の投影コードは 適切な 1つであり、「デフォルト」値ではありません。間違ったGCSコードを使用すると、場所が1kmも移動する可能性があります( 投影 CSはあなたを数万キロ離れた場所に置く可能性があります)。