「Cesium」を利用して、任意の座標から高度を取得する

はじめに

前回、GPS経路情報をCesium上で表示させましたが、Cesiumの地形情報と高度があっていなかっため、うまく表示ができませんでした。

そこで、任意の座標から、Cesiumの地形情報からの高度を取得してみました。高度の取得には、sampleTerrainMostDetailed()メソッドを利用します。同様の機能で、sampleTerrain()メソッドが存在しますが、こちらはCesiumの地形レベルを指定する必要があるため、sampleTerrainMostDetailed()メソッドを利用します。

ちなみに、Cesiumの地形レベルの最大の詳細レベルは14でした。地形レベルが高いほど、高度が正確になります。

提供される高度は準拠楕円体からの高さ(Ellipsoid.WGS84)楕円体高になります。これは、平均海面からの高度である標高ではありません。なので、海でサンプリングした場合、必ずしも0mになるとは限りません。

以下、高度の取得プログラムです。

htmlファイル(抜粋)

上記で出力したログの高度をGPS経路情報に再設定し、再度、GPS経路情報を表示してみました。

自動車が地面に埋め込まれずに、表示されています。

ただし、今回の場合は事前に高度情報を取得し、czmlに設定していたので、手間がかかりました。次回は、動的に高度情報を取得して表示させる方法を、調査しようと思います。

Print Friendly, PDF & Email

シェアする

  • このエントリーをはてなブックマークに追加

フォローする