求空間點到一條直線距離最近的點的座標C 程式設計

2021-08-04 10:16:55 字數 948 閱讀 6731

1樓:匿名使用者

我是用c弄的,不過儘量往類那邊靠(我用結構,c++還在看)。

你再改一些應當就可以了。

#include

#include

#include

typedef structpoint;

typedef structline;

main()

int initpoint(point *a,double x,double y,double z)

int printpoint(point a)int initline(line *l,point a,point b)

int point2line(line l,point p,point *q)

else

return 1;

}double p2p(point a,point b)

2樓:

這個 用向量 最簡單了(根本不需要考慮特殊情況,不需要 ,點面距離公式)

設 垂足 為(x,y,z)

向量a(x1-x2,y1-y2,z1-z2),b(x0-x,y0-y,z0-z);

垂直則滿足

a*b=0

(x1-x2)*(x0-x)+(y1-y2)*(y0-y)+(z1-z2)*(z0-z)=0;//1

(這個方法可以 推廣到 n維)

還有 這個 點在點c和點b上

bc的 一般方程是

(x-x0)/a=(y-y0)/b=(z-z0)/c, 這是一條過(x0,y0,z0),方向向量為的直線. 把 點 往裡面帶入

得到3個式子,消元

之後得到 x,y,z的 表示式

這種題目用程式設計做

實在是 猥瑣,

就是考數學的 化解能力

因為 電腦 不知道怎麼求解 方程組

只有把 最後的化簡的式子輸進去,叫他計算結果而已

如何過一點作一條和兩條交叉直線相交的直線畫法幾何

以這個點和其中一條直線組成乙個平面,交另一條直線於一點,連線兩點就好了。平面作圖你應該會吧。可以通過投影變換,將其中一條直線變換為新投影座標中得投影面垂直線,後面就是過已知點做點與直線得交線 先畫兩條交叉的相交直線,在畫一條直過他們的交點的直線。我猜你的語文學的不是很好啊?請問在幾何畫法中,怎樣畫一...

如何用一條直線連線上24個點

想要使用一條直線連線上24個點,必須要仔細研究每個點之間的距離以及分布的規律,這樣才可以達到理想的效果。合理的使用正確的詞語,對不同的事物精準的情況進行詳細說明,才可以讓大家更清晰的掌握它。想要合理自如的使用詞語,最好可以分辨和學習以下幾點 1 詞義涵蓋的範圍不同。如 開墾 開拓 開闢 都有 開發 ...

如何畫點關於一條直線的對稱點,如何畫乙個點關於一條直線的對稱點

設出所求點的座標a a,b 根據所設的點a a,b 和已知點b c,d 可以表示出對稱點的座標c a c 2,b d 2 且此對稱點在直線上.所以將此點代入直線,此為乙個式子.再根據點ab組成的直線與所知直線相垂直,列出兩直線的斜率之積為 1,可得第二個式子.根據這兩個式子,可以求出a,b,即所求點...