3

これはとても単純な問題のように思えますが、私は答えを見つけることができませんでした(そして私は数学が得意ではありません)。UIViewを特定の見出しに沿って新しいCGPointXの距離に移動しようとしています。新しい座標を決定するための式は何ですか?

(私はこれをアニメートしたくありません、ただ瞬間的な動きです)

何かのようなもの:

x = 100; (current x value)
y = 150; (current y value)
d = 25; (distance to move the point)
h = 90; (west)

\\\ insert formula to determine new x,y coords

self.car.center =  (CGPointMake ([newX],[newY]);
4

1 に答える 1

7

pがポイント、Dが距離、θがX軸からの方位角の場合、

p new .x = p old .x + D *cos(θ)
p new .y = p old .y + D * sin(θ)

ただし、距離と角度を保存するのではなく、これは通常、ベクトルを使用して行われます(これにより、sin / cosが不要になります)

于 2010-06-03T20:02:09.367 に答える