假設我在笛卡爾座標平面上有兩個點,A
和B
,其中的x
和y
座標是雙精度float
s。我如何找到點C
的位置,它是它們之間距離的任意百分比?我怎樣才能找到一個點與另外兩個點之間的距離?
換句話說,用什麼方法代替「//Do magic to C
」?請記住,A
和B
每個由兩個double
組成,它們分別代表它們的x
和y
座標。
public static findProgressPoint(DoublePoint A, DoublePoint B, double position)
{
if (position > 1 || position < 0) //Ensure that position is between 0 and 1, inclusive
position = position - (int)position;
DoublePoint C = new DoublePoint(0.0, 0.0);
//Do magic to C
return C;
}
你想要點C在線段A-B上嗎?或者你想要點*哪裏dist(A,C)= R * dist(B,C)?這將是一個誇張的IIRC。 – wildplasser
**任意百分比**,你確定嗎?如果這個百分比<.5,那麼就沒有這個點......如果它是> .5,就有兩個這樣的唯一點......在這種情況下,我相信你需要一些三角函數來確定確切點... –
@wildplasser其實,所有這些點的軌跡是一個圓。 – eh9