2

グリッドの形状を変更した後、グリッド内の点の位置を見つけたい

例:
下の画像では、寸法(10,10)、(20,10)、(10,20)、(20,20)のグリッドがあります。グリッド内に点 (x)
があり、その 点の位置は (17,13) です。

ここに画像の説明を入力

グリッドの寸法を変更すると、グリッドの形状が変更され
ます以前のグリッドの形状はこのように変更されます
ここに画像の説明を入力

グリッドの形状を変更した後
グリッドの寸法は (8,8),(18,12),(12,18),(22,19)
点 (x) の位置はどうなるでしょうか? ポイントの現在の位置を見つけるためのソリューションまたはアルゴリズム
を見つける方法を誰かが説明できますか
.. 前もって感謝します..

4

1 に答える 1

1

基本的な考え方:

  • 1 つの角から点を通る線を引きます。通過する側のポイントを記録します。

  • 隣接するコーナーについても同じことを行います。

  • 変換された正方形について、同じ角とその線が側面を通過する場所の間に線を引きます。

  • 線が交差する場所は、ポイントが属する場所でなければなりません。

いくつかのメモ:

その定義によれば、線は無限に伸びます。

(前述のように)隣接するコーナーを使用する必要があります。反対側のコーナーを使用し、ポイントがコーナー間の線上にある場合、その線を超えて絞り込むことはできません。実際には、点が側面の 1 つにある可能性がある場合、隣接する角を使用すると同じ問題が発生します。この場合、3 つのコーナーが必要になります。

これが機能するのは、2 つの線が平行である場合を除き、交差する点が 1 つしかないためです (これは、上記のシナリオでのみ発生する可能性があります。同じ点を含む 2 つの線は、等しいか非平行である必要があります)。別のコーナーを追加すると、正方形のため、他の 2 つの線と平行にできません。

3 つのコーナーが同じライン上にある場合は、別の特殊なケースが発生します。この場合、4 つのコーナーすべてを使用する必要があります。しかし、4 つの角すべてが同じ線上にある場合、これは機能しませんが、この場合、結果の形状は単なる線分になります。

距離を使用することもできますが、形状が歪むため、実際の距離ではなく比率を使用することを忘れないでください。

于 2013-08-12T12:43:00.403 に答える