[OSGeoJapan-discuss] Mapserverの緯度経度の精度について

五十嵐仁 igarashi.jin @ jp.fujitsu.com
2013年 3月 5日 (火) 19:57:43 PST


boiledorange73様

>回避策として、mapgml.c の全ての "%f" を "%.8f" に
>置き換えてからビルドすると、
>フィーチャーの座標値が6桁から8桁になりました。

情報ありがとうございます。
mapgml.cのソースを見ているとWFS以外のところでも、
%fでハードコーディングしているような気がします。

以前、WMSの画像にOracleから取得した座標のフィーチャを
重ねてみたところ微妙にずれていたので、
WMSでもやはり同じことをしていると思われます。

>boiledorange73と申します。
># 誰が何と言おうともboiledorange73です。
>
>すみません、割り込みます。
>
>> 座標情報を6桁に丸めてしまっているということでしょうか。
>
>これを足がかりに、MapServer 6.2.0 のソースを見ました。
>
>mapgml.c で、GML出力のための関数で "%f" を渡しています。
>標準のCライブラリでは、"%f"は"%.6f"と同じです。
># msIO_fprintf() は最終的には vsprintf() を呼んでいます。
>
>「座標情報を6桁に丸めてしまっている」
>が正解だと思います。
>しかもハードコーディング。
>
>回避策として、mapgml.c の全ての "%f" を "%.8f" に
>置き換えてからビルドすると、
>フィーチャーの座標値が6桁から8桁になりました。
>
>
>2013年3月5日 10:08 五十嵐仁 <igarashi.jin @ jp.fujitsu.com>:
>
>> Jeff Mckennaさん
>>
>> thank you for your reply.
>> but my English is no good,so I answer in Japanese.
>>
>> CONNECTIONTYPEはOGRを使用してOracleSpatialに接続しています。
>>
>> ogrinfoコマンドの-sqlコマンドを実行してデータを確認してみましたところ、
>> 特に桁数は丸められず、Oracleのデータをそのまま取得していました。
>>
>> ということは、Mapserver本体でogr経由でデータ取得後に、
>> 座標情報を6桁に丸めてしまっているということでしょうか。
>>
>> >Hello,
>> >
>> >Have you also tried connecting through CONNECTIONTYPE OGR instead of
>> >direct through MapServer/Oraclespatial?
>> >
>> >You can also use an ogrinfo command with the "-sql" switch to query the
>> >Oracle data and see what values are returned.
>> >
>> >-jeff
>> >
>> >
>> >--
>> >Jeff McKenna
>> >MapServer Consulting and Training Services
>> >http://www.gatewaygeomatics.com/
>> >
>> >On 13-03-03 8:43 PM, 五十嵐仁 wrote:
>> >> メーリングリスト購読者各位
>> >>
>> >> 現在、MS4WをWFSサーバーとして、OracleSpatialをDBとして利用していますが、
>> >> Mapserverによって緯度経度が小数点6桁に丸められてしまう問題が判明し、
>> >> その解決策を調べています。
>> >>
>> >> 例えば以下のような感じで丸められてしまっています。
>> >> 座標系は、EPSG:4621のJGD2000です。
>> >> Oracleでの座標値:
>> >> 139.787404802403,35.6974644249899
>> >> WFSのGetFeatureInfoでの座標値:
>> >> 139.787405,35.697464
>> >>
>> >> GeoserverなどのWFSではOracleの緯度経度がそのまま配信されており、
>> >> OGCのWFSの仕様を見た限りでは座標値の精度に関する記述は見当たらなく、
>> >> Mapserverの実装上の問題だと考えています。
>> >>
>> >> Mapfileなどで設定できそうなプロパティがないかなど調べてみたのですが、
>> >> 明確な解決方法を見つけられておりません。
>> >>
>> >> Mapserver上で緯度経度を7桁以上で扱う方法をご存知の方がおりましたら、
>> >> お教えいただければと思い投稿しました。
>> >>
>> >> よろしくお願いいたします。
>> >>
>> >> 五十嵐
>> >>
>> >
>> >
>> >_______________________________________________
>> >OSGeoJapan-discuss mailing list
>> >OSGeoJapan-discuss @ lists.osgeo.org
>> >http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>
>> --
>> --------------------------------------------------------------
>> 五十嵐 仁(Jin Igarashi)
>> igarashi.jin @ jp.fujitsu.com
>>
>> _______________________________________________
>> OSGeoJapan-discuss mailing list
>> OSGeoJapan-discuss @ lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>
>
>
>
>-- 
>boiledorange73
>
>------------------------------------------------------------------------
>
>_______________________________________________
>OSGeoJapan-discuss mailing list
>OSGeoJapan-discuss @ lists.osgeo.org
>http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>
>
>---html-part included links-------
>mailto:igarashi.jin @ jp.fujitsu.com
>http://www.gatewaygeomatics.com/
>mailto:OSGeoJapan-discuss @ lists.osgeo.org

-- 
--------------------------------------------------------------
五十嵐 仁(Jin Igarashi)
igarashi.jin @ jp.fujitsu.com



More information about the OSGeoJapan-discuss mailing list