-1

指定された X、Y ポイントで前後左右に移動できるオブジェクトを指定します。最も効率的で人間の自然な方法で、指定された移動メカニズムを使用して、オブジェクトを X、Y ポイントに効率的に向ける方法。

オブジェクトはリアルタイムで移動できます。「startMoving」と「stopMoving」を伝えることができます。追加のひねりと私が問題を抱えている部分として、オブジェクトの向きは決してわからず、現在の位置しかわかっていないため、アルゴリズムは方向を「検出」する必要があります。オブジェクトの場所は、500 ~ 1 秒間隔で別のスレッドで更新されます。アルゴリズム内の場所を更新する「リクエスト」はいつでも作成できますが、すぐには利用できないため、アルゴリズムはそれを考慮に入れる必要があります。requestAndWaitForCoordUpdate() のようなことをすることは完全に受け入れられますが、おそらく必要ではありません。

コード例を次に示します。

public int[] currentCoords;
public void movement() {
  currentCoords[0] = 1005; // starting y coord
  currentCoords[1] = 1007; // starting x coord
  moveTo(1050, 1025);
}

public void moveTo(int x, int y) {
  ... how?
}

public void threadUpdatingCoords() {
   ... periodically check for source coord updates
   ... between 200ms and 1000ms apart.
}
4

1 に答える 1

0

私がこれを正しく理解しているなら、あなたは自分の方向性を決定する必要があります。

また、現在位置を照会することもできます。

新しい位置に移動する前に、最後の座標を保存できますか?

その場合は、基本的な三角法を使用して、最後の座標と新しい座標に基づいてオブジェクトが移動している角度を抽出します。

于 2011-03-21T21:06:43.517 に答える