如何避免round off error# Programming - 葵花宝典
i*D
1 楼
我想判断3d空间中一个线段和在一个点的关系. 这个点在这个线段的直线上,我想判断
它在线段的两个端点之间还是在之外. 这个问题本身是一个明确的判断,不能容忍error
和tolerance.
比如线段是AB, 另外一个点是C. 我的方法是判断if AB-(AC+BC)<0. 但是在实际运算中
,我发现即便是C在AB之间,也有很多时候AB-(AC+BC)<0. 应该是因为round off error.
不知道有什么好的trick或者策略来解决这个问题.
它在线段的两个端点之间还是在之外. 这个问题本身是一个明确的判断,不能容忍error
和tolerance.
比如线段是AB, 另外一个点是C. 我的方法是判断if AB-(AC+BC)<0. 但是在实际运算中
,我发现即便是C在AB之间,也有很多时候AB-(AC+BC)<0. 应该是因为round off error.
不知道有什么好的trick或者策略来解决这个问题.