GDAL等高線・2

GDALはKML出力もできる。高さに関するKMLタグがあるが、GDALでは取り立て対応していない。よってgdal_contourの-3dオプションも、KML出力では無効のようだ。

id:vec2ras:20090726:1248594842のASTER GDEMからKML出力、フィルタを作ってKMLに高さ属性を与えてみた。

標高モード

KML 要素の多くには 要素や座標が含まれており、地面、海面、海底からその要素までの距離を指定できます。標高は、 要素にも含めることができます。

標高の値を指定する場合は、必ず 要素も一緒に指定します。この要素によって、標高値が Google Earth でどのように解釈されるかが決まります。標高は、以下を基点として測定できます。

  • 地表面から(relativeToGround)
  • 海面から(absolute)
  • 主要な水域の底から(relativeToSeaFloor)

また、標高を無視することもできます(clampToGround および clampToSeaFloor)。

http://code.google.com/intl/ja/apis/kml/documentation/altitudemode.html


absoluteモード。海面からの相対標高。GoogleEarth上では絶対値ですね。高さ強調は1.5倍。


「地形レイヤ」を使って、持ち上げた。高さ強調は同じく1.5倍。


地面に埋もれてしまう箇所多数。Google EarthはSRTMの標高値だし、仮にSRTM同士でも3Dの表現方法が違うので、埋もれてしまう箇所はあるでしょう。


デフォルトでもあるclampToGroundモード。KMLの標高値を無視して、Google Eaethの標高値に沿ってレンダリングされる。


埋もれないけど、やや変なところもある(この画像では分かりにくいです)。
Google Earth上では絵として上手くレンダリングすればよいので、精度云々言うのはナンセンス。これはこれで良しですね。


おまけ。DEMの異常値は、absoluteモードだとこんな感じ。一発で識別可能w


あと一回は、等高線ネタ。

    • -

今日は地元の花火大会ですが、地面に埋もれた居酒屋で討論会。テーマは「なぜ日本はダメになったか」。グダグダにクダを巻くつもりです。