使用Java求某點到直線上的投影點

2021-07-16 03:10:42 字數 1023 閱讀 2855

/**

* 求直線外一點到直線上的投影點

* * @param pline 線上一點

* @param k 斜率

* @param pout 線外一點

* @param pproject 投影點

*/ public static void getprojectivepoint(pointf pline, double k, pointf pout, pointf pproject) else

} /**

* 求pout在pline以及pline2所連直線上的投影點

* * @param pline

* @param pline2

* @param pout

* @param pproject

*/ public static void getprojectivepoint(pointf pline, pointf pline2, pointf pout, pointf pproject) catch (exception e)

getprojectivepoint(pline, k, pout, pproject);

} /**

* 通過兩個點座標計算斜率

* 已知a(x1,y1),b(x2,y2)

* 1、若x1=x2,則斜率不存在;

* 2、若x1≠x2,則斜率k=[y2-y1]/[x2-x1]

* * @param x1

* @param y1

* @param x2

* @param y2

* @throws exception 如果x1==x2,則丟擲該異常

*/ public static double getslope(double x1, double y1, double x2, double y2) throws exception

return (y2 - y1) / (x2 - x1);

}

java怎麼求點到線段的距離

抽取了個函式,測試過可以執行,小白拿去使用。public doublepointline disp doublexx,doubleyy,doublex1,doubley1,doublex2,doubley2 如果點 xx,yy到點x1,y1 這條邊短 if a b else m xx x1 a if...

求直線上最近的二點 在公垂線上

直線是用乙個點和乙個方向向量 已單位化 構成 現在要求二條直線最近的點 即公垂線與兩直線的交點 class cray 射線類 如果二個直線平行,則兩條直線r1,r2的方向向量的內積必為1或 1,此時可計算s2在r1上的投影 點乘 在r1上計算投影點為sproject,則要求的兩點分別為sprojec...

C 求直線方程並求直線延長線上的某點的演算法

a1 a2 b1 b2 c1 c2 兩直線平行 a1 a2 b1 b2 c1 c2 兩直線重合 橫截距a c a 縱截距b c b 表示斜率為k,且過 x0,y0 的直線 表示與x軸 y軸相交,且x軸截距為a,y軸截距為b的直線 表示斜率為k且y軸截距為b的直線 表示過 x1,y1 和 x2,y2 ...