设定计算精度

由于计算机计算位数的限制,浮点数在计算过程中可能会出现误差,所以有时候即使是同一个点,经过不同的计算方式也会有不同的结果,从而导致判断问题。设定计算精度的目的就是为了解决这个问题,认为当两个点坐标差值小于等于eps时,两个点重合。

若设定eps为0.001则点(0.1,0.2)将和点(0.100001,0.200009)被视为同一点

默认的 eps 大小是 10的负十次方. ,也可以通过函数进行调整:

>>> get_eps()     #获取当前设定的精度
1e-10

>>> set_eps(1e-2)  #设定精度为10的负2次方
>>> get_eps()       #看一看修改之后的精度
0.01

一个精度影响判断的例子:在精度为0.01的条件下,会把在多边形外的点看做在多边形内部 关于此处点和多边形的判断相关函数请参考文档:点和多边形的关系

_images/eps0.png _images/eps1.png _images/eps2.png