この質問から一歩離れて: HTML5 Canvas に描画された線を選択するにはどうすればよいですか?
インデックス付きの「グリッド タイル」を使用すると、html5 キャンバスで描画された線 (潜在的に複数/多数の線が存在する場合) をすばやく選択するという課題に対する解決策を提供できますか?
私はそれがどのように機能するかを想像します:
ユーザーが線の上または近くをクリックした
- その線は、描画時に「グリッド タイル」(または複数) に割り当てられています。
関数はクリックの座標を取得し、最も近い [左上] グリッド頂点に丸めます
グリッド配列 (その名前はその頂点に対応する) は、それぞれの座標領域に含まれる線のデータを保持します。
-(おそらく、関数は最初に、各仮想「グリッド タイル」の [左上] 座標に基づいて [インデックスのような/体系的に割り当てられた] 名前で配列を自動的に作成します)
グリッド配列は、クリック座標への近接性を評価する際に「検索領域」とループする行数を狭めることにより、クリック座標に最も近い行を見つけるためのループ時間を短縮します。
これは実現可能ですか?