今天搞的都是一些简单的解析几何
有一些东西有固定的求法
求角平分线:先通过角的两边算出角度 再旋转其中一个至角平分线的位置
求垂线:直接通过方向向量求出直线的法向量
三角形的三个心:
外心:两个中垂线交点(三角形外接圆就是外心)
内心:两个角平分线交点
垂心:垂线交点(一个顶点在对边法向量上的直线)
圆的切线:点到圆心的直线 旋转一个角度 可以通过半径和到圆心的距离算
求球面距离:习惯通过球坐标系求出两个点直角坐标系中的方向向量 然后通过点积算出圆心角 再乘上球的半径
今天做的都是这些加上一点变换得到的题 感觉不需要拿出来
补了一道之前的计算几何题
UVA 4642:
求一个三角形内三个互相相切且各自与三角形中两边相切的圆的半径
有公式 但是想在考场上推倒不现实
我们可以二分其中一个圆的半径 通过几何关系算出另两个圆的半径
显然所有圆的圆心都在角平分线上 知道半径就可以确定坐标了
几何关系是通过圆心距的方程得到的
自己当时卡的地方:
1)几何关系得到一个二次方程 需要检验是哪一个 有一个会在三角形内 一个在外侧
2)二分的上界可以设置成三角形内切圆的半径 注意叉积多边形面积有时需要abs的
还在考虑一道题
UVA 6532 之前遇到过 那时还没学计算几何
明天多校
打算搞完第一期剩下内容