私は基本的な描画アプリケーションを作成しています。私は基本的な形と色の変更オプションを実装しました。現在、Listに描画された各パスを保存しています。Android - キャンバスで描かれたパスを選択/ハイライト表示
は今、私は次のように編集オプションの作品を追加したい:
描かれた形状(パス)上のユーザーのクリックは、それが を強調しなければならないと、ユーザが形状を編集することができるはずですとき。
これをどのように達成できますか?
私は基本的な描画アプリケーションを作成しています。私は基本的な形と色の変更オプションを実装しました。現在、Listに描画された各パスを保存しています。Android - キャンバスで描かれたパスを選択/ハイライト表示
は今、私は次のように編集オプションの作品を追加したい:
描かれた形状(パス)上のユーザーのクリックは、それが を強調しなければならないと、ユーザが形状を編集することができるはずですとき。
これをどのように達成できますか?
パスに入れたポイントの束を保持する必要があります。
ブルートフォースルーチンは以下のようにする必要があります:
1)タッチダウンイベントがトリガされました。
2)タッチポイントまでの各パスのすべてのポイントからユークリッド距離を計算します。
3)最短距離を見つけて、距離が十分に短いことを確認します。
4)その場合は、選択するパスを選択します。
5)選択したポイントまたは他のポイントを必要に応じて編集します。
それぞれに100ポイントのパスが20ある場合は、少なくとも2000回Math.sqrt()を計算する必要があります。 パフォーマンスのために、ユークリッドの代わりにマンハッタン距離の方法を選択できます。
OpenCV機能を使用することをお勧めします。