pi的定義:const double pi=acos(-1.0)
最大值的定義: const double inf=0x3f3f3f3f
向上取整:int a=ceil(double t);
向下取整:int a=floor(double t);
四捨五入: int a=round(double t);
內積運算
又稱數量積,點積
α*β=|α||β|cosθ
對加法滿足分配律
幾何意義
向量α在向量β的投影α′(帶有方向性)與β的長度乘積
若α與β的夾角為銳角,則其內積為正
若α與β的夾角為鈍角,則其內積為負
若α與β的夾角為直角,則其內積為0
外積運算
又稱向量積,叉積
α×β=|α||β|sinθ
θ表示向量α旋轉到向量β所經過的夾角
對加法滿足分配律
幾何意義
向量α與β所張成的平行四邊形的有向面積
判斷外積的符號
右手定則
α×β若β在α的逆時針方向,則為正值
順時針則為負值
兩向量共線則為0
三角形:
外心三邊中垂線交點,到三角形三個頂點距離相同
內心角平分線的交點,到三角形三邊的距離相同
垂心三條高線的交點
重心三條中線的交點,到三角形三頂點距離的平方和最小的點,三角形內到三邊距離之積最大的點
那麼如何儲存乙個點呢??
如何儲存一條線(線段,直線,射線):直接結構體裡面定義兩個點就好了!兩點確定一條直線啊
如何儲存乙個圓呢?乙個點加半徑搞定
還有乙個小細節:
在判斷誤差的時候我們需要乙個定義乙個eps;
因為我們在計算的時候是有誤差的!就比如我們判斷我們計算出來的直線的長度為0.9999999999999,但是實際長度是1,其實不是我們計算錯誤,而是計算機計算的誤差以及各方面因素導致的
const double eps=1e-9;
int pl(int x,int y)
計算幾何知識歸納
目錄 線段及直線的基本運算 1.點與線段的關係 2.求點到線段所在直線垂線的垂足 3.點到線段的最近點 4.點到線段所在直線的距離 5.點到折線集的最近距離 6.判斷圓是否在多邊形內 7.求向量夾角余弦 8.求線段之間的夾角 9.判斷線段是否相交 10.判斷線段是否相交但不交在端點處 11.求線段所...
計算幾何知識點
公式描述 公式中a,b,c分別為三角形三邊長,p為半周長,s為三角形的面積。3.三角形外接圓半徑公式 公式描述 公式中a,b,c分別為三角形的三邊,s為面積。4.正多邊形外角和為360度,各個外角相等且等於各邊所對應圓心角 5.正多變形面積 sin a r r n 2 a為圓心角,r為外接圓半徑,n...
計算幾何小知識整理
vec x1,y1 vec y1,y2 vec 與 vec 的夾角為 theta cos theta x1 cdot x2 y1 cdot y2 sqrt cdot sqrt theta acos x1 cdot x2 y1 cdot y2 sqrt cdot sqrt vec x1,y1 vec ...