地図画面の動作が遅い
ssig33 opened this issue · comments
ssig33 commented
地図をドラッグ&ドロップした時の挙動がとにかく遅くて、印刷したい地図の状態を得るのが困難であると思う
Taro Matsuzawa aka. btm commented
ちなみに、2019年台風19号のマップを見ているならば、そもそもデータ量が多すぎるので、重くて当然というのはある。
これ?
TAKANO Mitsuhiro commented
yuiseki commented
案
- 案A:マーカーのクラスタリングに対応する #264
- 案B:表示している領域だけマーカーを描画する
- 案C:地図をドラッグしている時はマーカーを描画しない ← New!
Hal Seki commented
この問題は引き続き解消されていないので、なんとかしたいところ
Taro Matsuzawa aka. btm commented
markerではなくSpriteを表示するようにすると高速に動くはずだが、Spriteを動的に作る仕組みなどを考える必要がある。
Kanahiro Iguchi commented
この件、気になったのでみてみましたが
mapprint/components/PrintableMap.vue
Line 198 in 4397291
①地図移動のたびにcomputedプロパティの
inboundMarkers
が再計算され、②この値に依存する別のcomputedが再計算され…と重たいようです。GeoJSONのループ自体が重たいのかも?
たとえば常に全件表示するようにすると、地図操作のパフォーマンスは改善するような気がします。それでもフレームレートは遅いですが。なので地図の描画速度がボトルネックではない気がしました。
Kanahiro Iguchi commented
概要はPRに書いてありますが、毎回markerを全てループしていて、かつコストの高い処理が入っていたのが、パフォーマンス低下の原因と思われます。