計算幾何基本採用向量來表示點、線、麵等基本元素,而非我們平時常用的解析式。
向量的基礎運算法則:
給定兩個向量\(p(x_1,y_1),q(x_2,y_2)\)。
加法:\(p+q=(x_1+x_2,y_1+y_2)\)
減法:\(p-q=(x_1-x_2,y_1-y_2)\)
數乘:\(\lambda p=(\lambda x_1,\lambda y_1)\)
點積:\(p \cdot q=x_1 x_2+y_1 y_2\)
\[\vec \cdot \vec=|\vec||\vec|\cos \left \langle \vec ,\vec \right \rangle
\]點積幾何意義:乙個向量在另乙個向量上的投影乘上另乙個向量的模長。
點積公式證明
叉積:\(p \times q=x_1 y_2-x_2 y_1\)
\[\vec \cdot \vec=|\vec||\vec|\sin \left \langle \vec ,\vec \right \rangle
\]叉積幾何意義:以兩個向量為鄰邊組成的平行四邊形的有向面積。
叉積公式證明
計算幾何學習筆記
基礎部分 include using namespace std define type double define vector point define eps 1e 8 const double pi 3.14159265358979323 type deg2red type deg type...
計算幾何學習筆記
計算幾何是什麼東西?能吃嗎?給定 n 個點 x i,yi 問 歐幾里得 距離最近的點對。如果用樸素的兩兩枚舉,需要o n2 的時間。考慮用分治法,先將點按照先 x 後 y排序。考慮對一段點 l r 的處理。在 放一根平行於y軸的線,其左邊的答案為a,右邊為b,設 min a,b 考慮如果有跨這條線的...
計算幾何學習筆記
這部分沒啥好講的。點可以使用座標表示,向量可以使用點表示。這裡記錄一些我知道的基礎知識。對於向量 a x,y 其長度記為 a sqrt 對於兩個向量 a x 1,y 1 b x 2,y 2 他們的叉積是 a times b x 1 cdot y 2 x 2 cdot y 1 叉積的絕對值還等於以這兩...