實數比較
叉積:cross(u,v)為兩向量組成的三角形的有向面積的2倍const double eps=1e-8;
int dcmp(double x)
//點積
double length(point a) //向量的長度
double angle(point a,point b) //兩向量的夾角
向量旋轉double cross(point a,point b) //叉積
double area2(point a,point b,point c) //三角形面積的2倍
計算向量的單位法線point rotate(point a,double rad)
求兩直線交點,需保證給出的兩直線不共線point normal(point a)
點到直線的距離//p,q分別為兩直線上的一點,v,w分別為兩直線的方向向量
point getlineinter(point p,point v,point q,point w)
點到線段的距離double distoline(point p,point a,point b)
點在直線上的投影double distoseg(point p,point a,point b)
判斷線段規範相交point getpro(point p,point a,point b)
求多邊形的有向面積(可能為負)bool segproperint(point a1,point a2,point b1,point b2)
bool onseg(point p,point a1,point a2)
double polyarea(point* p,int n)
{ double area=0;
for(int i=1;i
二維幾何模板 二維幾何基礎
二維幾何模板 include include include include include include include include include using namespace std 二維幾何基礎 struct point typedef point vector const doub...
計算幾何 二維幾何 模板
幾何意義 向量的點積 a b a b a b cos cos 若cos cos 為正,兩向量之間的夾角為銳角 為負,兩向量夾角為鈍角 為量,兩向量夾角為直角。b在a方向上的投影 向量的叉積 a b a b a b sin sin 數值上表示a和b構成的平行四邊形的面積。include using n...
二維幾何基礎
模板 from 紫書 includeusing namespace std typedef long double ld const ld eps 1e 10 const ld pi acos ld 1.0 struct point typedef point vector vector opera...