Advertisement
Guest User

Untitled

a guest
Nov 29th, 2012
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package com.rtl
  2. {
  3.    
  4.     /**
  5.      *
  6.      * @author RTLShadow
  7.      *
  8.      */
  9.     public class FastMath
  10.     {
  11.         public static var DEGREES_TO_RADIANS:Number = Math.PI / 180;
  12.         public static var RADIANS_TO_DEGREES:Number = 180 / Math.PI;
  13.        
  14.         public static function randomNum( min:Number, max:Number ):Number
  15.         {
  16.             return min + ( max - min ) * Math.random();
  17.         }
  18.        
  19.         public static function calculateDistance( x1:Number, y1:Number, x2:Number, y2:Number ):Number
  20.         {
  21.             var dx:Number = x2 - x1;
  22.             var dy:Number = y2 - y1;
  23.             return Math.sqrt( dx * dx + dy * dy );
  24.         }
  25.        
  26.         public static function smallestNum( arr:Array ):Number
  27.         {
  28.             var sNum:Number = Infinity;
  29.             for ( var i:int = 0; i < arr.length; i++ )
  30.             {
  31.                 if ( arr[ i ] < sNum )
  32.                 {
  33.                     sNum = arr[ i ];
  34.                 }
  35.             }
  36.             return sNum;
  37.         }
  38.        
  39.         public static function largestNum( arr:Array ):Number
  40.         {
  41.             var lNum:Number = Number.MIN_VALUE;
  42.             for ( var i:int = 0; i < arr.length; i++ )
  43.             {
  44.                 if ( arr[ i ] > lNum )
  45.                 {
  46.                     lNum = arr[ i ];
  47.                 }
  48.             }
  49.             return lNum;
  50.         }
  51.        
  52.         public static function toRadians( deg:Number ):Number
  53.         {
  54.             return deg * DEGREES_TO_RADIANS;
  55.         }
  56.        
  57.         public static function toDegrees( rad:Number ):Number
  58.         {
  59.             return rad * RADIANS_TO_DEGREES;
  60.         }
  61.        
  62.         //~7.25x faster than Adobe's Math.floor()
  63.         public static function floor( num:Number ):Number
  64.         {
  65.             return Number( int( num ) );
  66.         }
  67.        
  68.         // ~7x faster than Adobe's Math.ceil()
  69.         public static function ceil( num:Number ):Number
  70.         {
  71.             return Number( int( num ) ) + 1;
  72.         }
  73.    
  74.     }
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement