写个东西以后拿来填坑。
2D
1.点、直线、线段、圆、三角形、多边形、矩形->判相交,判位置,求交点,求最近点,求特殊点(三角形六心等)
2.凸包(水平序,极角序)*(规范,非规范)
3.半平面交(求核)
4.旋转卡壳(多边形直径、宽度,两个多边形间的最近最远距离)
旋转卡壳(坑)
他们包括:
计算距离
凸多边形宽
凸多边形间最大距离
外接矩形
最小面积外接矩形(矩形的一条边必与原凸多边形一条边重合,利用2组平行线进行卡壳)
最小周长外接矩形(最小周长外接矩形并非恒与最小面积外接矩形相同,不过因为都存在矩形的一条边必与原凸多边形一条边重合的性质,故,方法一样)
三角剖分
洋葱三角剖分
螺旋三角剖分
四边形剖分
凸多边形属性
合并凸包(低效方法:给定两个多边形的所有顶点, 计算这些点对应的凸包)
找共切线
凸多边形交(因为一个结论(由Guibas提出)证明了多边形交点和和他们之间的桥是一一对应关系。所以利用桥来计算交点集,交点集与内部点行程了多边形的交)
临界切线
凸多边形矢量和
最薄截面
最薄横截带
5.扫描线(坑)
6.KD-树(坑)
7.三角剖分
3D