今回は画面外マーカの表示方向についてです。
今のqgmapの画面外マーカの方向は以下の図のようになっています。
今のqgmapの画面外マーカ
今は、マークした位置が画面の上下左右に直線的に移動して表示できる場合は「辺」の部分にマーカを表示し、上下左右移動で表示できない場合は頂点部分に斜め方向向きのマーカを表示しています。
ですので、右辺にあるマーカの y 座標はマーカの y 座標と一致しています。
開発当初は、以下のようなものを考えていました。
開発当初のマーカの方向
画面の中心からマーカまでを直線で結んだとき、画面の端を横切った所にマーカを表示する方法です。
一応、こちらで実装したんですが、当時はまだ中央マーカ表示機能がなかったこともあり、スクロールさせたときのマーカの挙動に何となく違和感があったため、現在の方法に切り替えました。
マーカを表示させた状態でスクロールさせると違和感はないんですが。
個人的な感覚での、それぞれの特徴をまとめると以下のようになります。
- 前者の方法
- 中央マーカなしの時のスクロール時の挙動が自然
- マーカとの距離がある程度離れているとき、必ずしも正確に方向を表示しない
- 後者の方法
- 中央マーかなしの時のスクロール時の挙動がなんとなく不自然
- マーカとの距離が離れていても、正しい方向を指し示す。
一応、後者の方向で実装したパッケージも作成しましたので、どちらがいいかご意見を伺いたいと思います。
パッケージ名や実行ファイルなど名前を変更しているので、オリジナルの qgmap と共存することが可能です。
また、「.」キーでの中央マーカ表示も実装していますので、中央マーカ表示/非表示でスクロールさせてみて、画面外マーカの挙動がしっくりくるかも試していただけると幸いです。
慣れの問題だとはおもうので、どちらでも一緒かもしれませんが・・・。