線分の端点と追加ポイントを受け入れ、そのポイントの開始点からの相対座標を返す関数(JavaScript)を記述する必要があります。したがって、この画像に基づいて:線分を基準に座標を変換する
function perpendicular_coords(x1,y1, x2,y2, xp,yp)
戻り[xp',yp']
XP「は線分に垂直な線に沿って(XP、YP)からの距離であり、YP」からの距離です( x1、y1)をその垂線が線分と交差する点まで移動させる。私がこれまで試したどのような
:
function rotateRad(cx, cy, x, y, radians) {
var cos = Math.cos(radians),
sin = Math.sin(radians),
nx = (cos * (x - cx)) + (sin * (y - cy)) + cx,
ny = (cos * (y - cy)) - (sin * (x - cx)) + cy;
return [nx, ny];
}
[xp', yp'] = rotateRad(x1,y1, xp, yp, Math.atan2(y2-y1,x2-x1));
私は関数を記述しませんでした。 https://stackoverflow.com/a/17411276/1368860
私はあなたが返すようにしたいと仮定し、'結果のは他の問題は簡単です...: - ) –
写真の中に余分なものがあるように見えます。私は3つの青い点の座標を持ち、2つのオレンジ色の部分に沿って距離を求めます。 – Sigfried
@ScottSauyet、私は質問に私が試みたものを加えました。ありがとう。 – Sigfried