SSブログ

AREarthroid 標高データ [Androidアプリ AREarthroid]

本日は、AREarthroidのネタである。
AREarthroidは今のところ平坦な球でしかない。ここに標高データを持ってきて、山を描いてみたいと野望を抱いている。
緯度、経度から簡単に標高がわかるようなサービスがあればよいのだが、そんな気が効いたサービスはない。MapViewの機能にあれば、よかったんだけどねぇ。
標高データ自体は、国土地理院に行けばありそうな感じ。しかし、アプリに組み込んで使用するとなると、なんかめんどう。
NASAにSRTMっていうのがあり、ここに地球全体の標高データがあることがわかった。

SRTM Shuttle Radar Topography Mission
http://www2.jpl.nasa.gov/srtm/

カシミールのSRTMの説明
http://www.kashmir3d.com/srtm/

カシミールは山を3Dで立体的に表示するPC用のソフト。カシミールなにげにすごいのだが、android版はないのかなぁ。

でもって、SRTMの30秒データっていうのが軽くてよさげではある。
この標高データから標高を計算して、3Dデータを作成する。今は、高度についてはみな「0」となっている。ここにSRTMの標高データを組み込んでやろう。という作戦である。

3Dデータの作成は、C/C++で書いた。SRTMから持ってきた標高データはファイルで置いておき、その都度読み込んで使いたい。もう、メモリはぎりぎりなので。
androidでのそういった外部ファイルのデータは、res/rawやassetsに入れておくといった決まりがある。assetsはテキスト形式のちょっとした設定ファイル用。バイナリはres/rawに入れておくっぽい。

でね。問題は、C/C++でres/raw、assetsに入っているリソースをfopenでオープンできないのですよ。もちろん、Javaからなら、getResources().openRawResource(R.raw.ファイル名)やら、getResources().getAssets().open(ファイル名)とかでできる。

fopenでもちゃんとフルパスを指定してやれば、オープンできると思うが、どこに入っているのやら。apkファイルは圧縮されているから、展開してやらないと読み込めないか...
と、以下のページを発見。

http://androgeek.info/?p=275

libzipを組み込んで、zip_fopenしてやればOKなのか。
うーん。ちょいとめんどうだがやってみるか。

なんかできたっぽい。
ソースをフォルダにわけてやらないといけなかったが、ちゃんとビルドできた。

res/rawフォルダを作って、適当にデータを入れてみる。

で、ファイルをオープンするのは、zip_fopenするのか。もしかしてこれって、いちいち展開する?遅そうだなぁ...ローカルファイルにキャッシュするか。それは後でもできるので、とりあえずはパフォーマンスをみるか。
zip_freadで読み込んで、zip_fcloseで閉じればよいのね。zipが付いただけで、fopenと使い方はかわらない。

さて、肝心の標高データはどうなっているかというと、30秒メッシュのやつはなんだかフォーマットがよくわからないのでパス。SRTM3の3秒メッシュを加工して(間引きして)使うことにする。

ごそごそと、間引きプログラムを作成中...
あー、結構大変。

できたぽい。ちょっとやってみる。

むむ、山にはなったが、なんかえらく陥没している部分が...
データの値を見ると、-32768? ほほ、これはデータが欠落しておるな。カシミールのページにもデータげ欠落していると書いてあった。これか。
じゃあ、-32768は無視。ついでに、まわりの標高の平均を計算するようにして...

どうじゃぁ...


AREarthroid富士山.png

富士山がみえた。
夕方なので、暗いのは勘弁。
メッシュが荒いのできれいな富士山にはなってないなぁ。これでも少し精度は上げたんだけど。標高データの取得パフォーマンスは、それほど悪くない感じ。展開後のファイルをキャッシュすればもっと軽くなるであろう。もしかして、res/drawbleに入っている画像データもいちいち展開しているのかも。そうやって、ローカルのキャッシュファイルが増えていくのか... 違うかな。

それに、視点の位置も標高で調整しないと、山の裏から見ている感じになってしまう。もう少ししたら、リリースできるであろう。



サイト内を検索

nice!(0)  コメント(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。



Copyright Atsushi Asai Google+朝井淳
[改訂第4版]SQLポケットリファレンス

[改訂第4版]SQLポケットリファレンス

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2017/02/18
  • メディア: 単行本(ソフトカバー)

イラストで理解 SQL はじめて入門

イラストで理解 SQL はじめて入門

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2019/05/16
  • メディア: 単行本(ソフトカバー)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2015/03/03
  • メディア: 単行本(ソフトカバー)

Access クエリ 徹底活用ガイド ~仕事の現場で即使える

Access クエリ 徹底活用ガイド ~仕事の現場で即使える

  • 作者: 朝井 淳
  • 出版社/メーカー: 技術評論社
  • 発売日: 2018/05/25
  • メディア: 大型本

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。