/**
* 在考虑计算误差的情况下,判断两个浮点小数是否相等。
*
* @param a 一个浮点小数。
* @param b 另一个浮点小数。
* @param tol 允许的最大浮点小数的计算误差。
* @return 如果相等,返回 true;否则返回 false。
*/
public static function eqFloat(a:Number, b:Number,
tol:Number = 1e-12):Boolean
{
return Math.abs(a - b) < tol;
}
/**
* 在考虑计算误差的情况下,判断两个浮点小数的大小。
*
* @param a 一个浮点小数。
* @param b 另一个浮点小数。
* @param tol 允许的最大浮点小数的计算误差。
* @return 如果相等,返回 0;ab,返回 1。
*/public static function compareFloat(a:Number, b:Number,
tol:Number = 1e-12):int
{
return eqFloat(a, b, tol) ? 0 :
a < b ? -1 :
1;
}
本文链接:http://assnippets.blogspot.com/2008/01/as3.html转载请注明出处。
相关文章:
0评论:
发表评论