Usefull Flash Things

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

Percentage equations:

private function precent1(a:Number, b:Number):Number{
	// What is [a] percent of [b]?
	return (a/100)*b;
}

private function precent2(a:Number, b:Number):Number{
	// [a] is what percent of [b]?
	return (a/b)*100;
}

private function precent3(a:Number, b:Number):Number{
	// [a] is [b] percent of what?
	return a/(b/100);
}

Taken from http://www.math.com/students/calculators/source/3percent.htm

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

Function to return distance between two points:

private function distance(x1:Number, y1:Number, x2:Number, y2:Number):Number{
	var dx:Number = x2 - x1;
	var dy:Number = y2 - y1;
	return Math.sqrt(dx*dx + dy*dy);
}

Function to map a value within a range to another range:

private function map(inValue:Number, inLow:Number, inHigh:Number, outLow:Number, outHigh:Number):Number{
	var outValue:Number = 0;
	var inRange:Number = inHigh - inLow;
	inValue -= inLow;
	var inPercent:Number = (inValue/inRange)*100;
	var outRange:Number = outHigh - outLow;
	outValue = outLow + (inPercent/100)*outRange;
	return outValue;
}

Function to return an angle between two points (test first):

private function getAngle(x1:Number, y1:Number, x2:Number, y2:Number):Number{
	if(x1 == x2 && y1 == y2)return 0;
	var theX:Number = x2 - x1;
	var theY:Number = (y2 - y1) * -1;
	var angle:Number = Math.atan(theY/theX)/(Math.PI/180);
	if(theX<0){angle += 180;}
	if (theX>=0 && theY<0){angle += 360;}
	return angle;
}

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

Function that returns a random number between min and max inclusive:

public static function randomBetween(min:Number, max:Number):Number{
	//Returns a random number between min and max inclusive
	return Math.floor(Math.random() * (max - min + 1)) + min;
}
public static function convertRadiansToDegrees($radians:Number) : Number {
	return ((180 * $radians)/Math.PI);
}
public static function convertDegreeToRadians($degrees:Number) : Number {
	return $degrees * Math.PI/180;
}

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

Flex SDK Meta Embeds:

Application
[SWF(width="960", height="650", frameRate="31", backgroundColor="#F6F3EF")]
 

Embed Font
[Embed(source="../../../assets/Utopia-Regular.otf", fontName="Utopia-Regular", fontWeight="regular", mimeType="application/x-font", advancedAntiAliasing="true")]
private static const UTOPIA_CLASS:Class;
 
Import Symbol
[Embed(source="../../../../../assets/stage.swf", symbol="SavePanel")]
private static const SAVE_PANEL:Class;

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

CSS to remove margins:


/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\

Function that sorts an XMLList by attribute:

public static function sortXMLByAttribute(input:XML, attribute:String, options:Object=null, copy:Boolean=false):XML{
    //store in array to sort on
    var xmlArray:Array = new Array();
    var item:XML;
    for each(item in input.children()){
        var object:Object = {data:item, order:item.attribute(attribute)};
        xmlArray.push(object);
    }
    //sort using the power of Array.sortOn()
    xmlArray.sortOn("order",options);
    //create a new XMLList with sorted XML
    var sortedXmlList:XMLList = new XMLList();
    var xmlObject:Object;
    for each(xmlObject in xmlArray ){
    	sortedXmlList += xmlObject.data;
    }
    if(copy){
        //don't modify original
        return input.copy().setChildren(sortedXmlList);
    }else{
        //original modified
        return input.setChildren(sortedXmlList);
    }
}

/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\