-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
On-demand realtime image tile rendering on Raspberry Pi / Raspberry Pi を用いたオンデマンド・リアルタイム・画像タイルレンダリング #14
Comments
#15 での検討の結果次第で、この作業を UNVT Portable プロジェクトの一部にするか、あるいは別のプロジェクトにします。 |
インストール作業に関して、これまででベストのドキュメントは これ です。 @mapbox/mapbox-gl-native を導入するためには、libegl1、libgles2とxvfbが必要であるというメモが残っています。当時は RHEL 6.10 (Santiago) を使っていました。 Raspberry Pi OS ではこれらが何になるか、ということをまず調べることになると思います。 |
ライブラリーの確認・導入(RPi 4)Raspberry Pi OS (64 bit) で確認してみました。 pi@raspberrypi:~ $ uname -a
Linux raspberrypi 5.4.42-v8+ #1319 SMP PREEMPT Wed May 20 14:18:56 BST 2020 aarch64 GNU/Linux libEGL (libegl1)
libGLES2 (libgles2)
xvfb
|
mapbox-gl-native は、Raspberry Pi ではビルドする必要があります。 |
これらのパッケージを導入しました。
まだビルドはできていません。 |
いろいろなパッケージを加えてみましたが、
が出るのを乗り越えることができていません。 Raspberry Pi OS で使用可能なのは、Open GL ES であって Open GL ではない、というところを私が乗り越えることができていないような気がします。 (参考)https://blog.mapbox.com/vector-maps-on-raspberry-pi-and-yocto-faf9f1423757 |
FOSS4G 2019 Bucharest で @hfu から発表したとおり、 Mapbox GL JS を使用しない従来型のウェブ地図システムとベクトルタイルとの相互運用を最も安定的に、かつ最も高速に実施できる方法は、オンデマンド・リアルタイム画像タイルレンダリング機能を用いる方法であると考えています。
これは、リソースとしては一義的にベクトルタイルを管理し、画像タイルをリクエストに応じて生成する様にする方法で、tmcw によれば、2.75 世代のサービスであるとされ、例えば mapbox のタイルもこの方式での運用がされていたとのことです。
この機能は、次の通り実装しています。
hasekura は多少ブリンディシ実装特有の設定を混ぜているかもしれませんが、多分まずは hasekura を見ると言うことでイメージはわくかも知れません。140行ほどのコードです。
このコードは、かつて Node 8 でしか動かない、という問題があったようですが、2019年の6月末ころにその問題は解消されたようです。< mapbox/mapbox-gl-native#12252
ちなみに、インストールが「すごくむずかしい」です。サーバ側でグラフィックライブラリを動かす必要があるのですが、そういうことができるようにサーバを設定するのはそれほど簡単ではない、というのが正直なところです。また、グラフィックスなので当然といえば当然なのですが、計算負荷はとても高いです。
この機能を国土地理院でも評価したいという要望がありました。
このため、@hfu のほうで、この機能を Raspberry Pi で動かせないか試してみようと思っています。
help wanted です。
The text was updated successfully, but these errors were encountered: