JpMeshCodeExtractorの対応座標系について

42 views
Skip to first unread message

TJ

unread,
Feb 19, 2016, 8:46:18 PM2/19/16
to FMEユーザーフォーラム
FME 2016.0.1.0

JpMeshCodeExtractorを利用して、JGD 2000 7系の図郭ポリゴンから2次メッシュコードを取得しています。


取得した_meshcodeを確認すると、6桁の2次メッシュコードではなく、以下のようなマイナス記号付きの13桁数字になっています。
また、jpmeshcodeextractor.meshtypeは<missing>となっています


試に、座標系をJGD 2000に変換して再度確認したら、6桁の2次メッシュコードを取得できるようになりました。


JpMeshCodeExtractorのヘルプを読みますと、以下のように書かれています。
This transformer is valid only for a geographic data on Japanese area with LL coordinate system.

このLL coordinate systemはJGD 2000のことでしょうか?
Auto Generated Inline Image 1
Auto Generated Inline Image 2
Auto Generated Inline Image 3

Takashi Iijima

unread,
Feb 19, 2016, 9:17:10 PM2/19/16
to FMEユーザーフォーラム
"LL"は、Latitude (緯度), Longitude (経度) を意図しています。
このトランスフォーマーは、座標系が緯度経度である場合にしか働きません。
平面直角座標系やUTMなどの投影座標系である場合は、緯度経度の座標系に変換してから使用してください。

TJ

unread,
Feb 19, 2016, 9:26:10 PM2/19/16
to FMEユーザーフォーラム
>"LL"は、Latitude (緯度), Longitude (経度) を意図しています。
そういうことですね。

追加質問
緯度経度の座標系の場合でも、日本測地系と世界測地系があります。
JpMeshCodeExtractorの中身をちょっと見てみましたが、座標系の判定はないようで、
JpMeshCodeExtractorの場合、世界測地系を基準にしているのでしょうか?

Takashi Iijima

unread,
Feb 19, 2016, 9:32:49 PM2/19/16
to fm...@googlegroups.com
日本のメッシュコード体系は、元々、測地系を考慮しておらず、座標値のみでメッシュコードが決まります。
どの測地系であっても、北緯32度、東経149度の地点は一次メッシュ区画3249の南西隅です。
つまり、メッシュ区画の実際の位置は、測地系によってずれるということです。

JpMeshCodeExtractor も測地系についてはなにも考慮せず、座標値のみでメッシュコードを求めています。

TJ

unread,
Feb 19, 2016, 10:37:38 PM2/19/16
to FMEユーザーフォーラム
>日本のメッシュコード体系は、元々、測地系を考慮しておらず、座標値のみメッシュコードが決まります。
JpMeshCodeExtractor中身を見ますと、CoordinateExtractorによって、x,yの値を取得しています。
確かにこれですと、世界測地系、日本測地系に関係なく、最初の頂点のx,yを取得できますね。

とても勉強になりました。ありがとうございます。



Takashi Iijima

unread,
Feb 19, 2016, 11:44:17 PM2/19/16
to FMEユーザーフォーラム
ヘルプのこの注意書きにも留意してください。
"This transformer rounds the coordinate values into milliseconds when computing mesh code. So an computational error may not be avoided if the coordinate is very close to a mesh boundary."

メッシュ区画境界の座標値は度単位では割り切れない値であることもあるので、メッシュ区画ポリゴンの頂点でメッシュコードを求めると、浮動小数点数の計算誤差によって誤判定する可能性があります。
さらに、メッシュ区画ポリゴンの作成方法によっては、計算誤差以上の誤差が含まれていることもあります(出来の悪いプログラムで作成した場合など)。

これらの誤判定を防ぐため、私は、メッシュ区画ポリゴンのメッシュコードを求める必要があるときは、CenterPointReplacer で中心点に変換してから JpMeshCodeExtractor を使っています。

TJ

unread,
Feb 20, 2016, 2:16:48 AM2/20/16
to FMEユーザーフォーラム
注意していただいてありがとうございます。

私も使用時中心点に変換してからJpMeshCodeExtractor を使うようにします。
Reply all
Reply to author
Forward
0 new messages