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);
}
}
/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\