/** * Returns a percentage of a value in between 2 other numbers. * @param bottomRange low end of the range. * @param topRange top end of the range. * @param valueInRange value to find a range percentage of. * @return The percentage of valueInRange in the range. * @use getPercentWithinRange( 50, 150, 100 ); // displays 50 */ public static function getPercentWithinRange( bottomRange:Number, topRange:Number, valueInRange:Number ):Number { // normalize values to work off zero if (bottomRange < 0) { var addToAll:Number = Math.abs(bottomRange); bottomRange += addToAll; topRange += addToAll; valueInRange += addToAll; } else if ( bottomRange > 0 ) { var subFromAll:Number = Math.abs(bottomRange); bottomRange -= subFromAll; topRange -= subFromAll; valueInRange -= subFromAll; } // simple calc to get percentage return 100 * ( valueInRange / ( topRange - bottomRange ) ); } |
No comments:
Post a Comment