/**
* Copyright leichtgewicht ( http://wonderfl.net/user/leichtgewicht )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/3Axp
*/
package {
import flash.text.TextFieldAutoSize;
import flash.text.TextField;
import flash.events.KeyboardEvent;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.net.URLRequest;
import flash.display.Loader;
import flash.display.Sprite;
public class FlashTest extends Sprite {
private var _loader: Loader;
private var _circles: Sprite;
private var _out: TextField;
private var _pos: Array = [{x:24,y:13},{x:73.25,y:5.25},{x:95.5,y:1.5},{x:119.75,y:3.5},{x:142.75,y:10.75},{x:189,y:11},{x:53.5,y:17.25},{x:162.75,y:20.25},{x:5.75,y:29.75},{x:39.5,y:32.75},{x:87.25,y:24.75},{x:111.75,y:25.5},{x:135.75,y:31},{x:181.75,y:33.75},{x:66.75,y:38.25},{x:159.25,y:42.25},{x:2,y:49.75},{x:23,y:48.75},{x:97.75,y:45.75},{x:121,y:50},{x:53.75,y:56.75},{x:143.5,y:57.25},{x:179,y:57.5},{x:78.75,y:60.75},{x:16,y:72.75},{x:36.5,y:69.5},{x:106.5,y:69.5},{x:128.25,y:74.75},{x:163.5,y:72.5},{x:196.25,y:78.25},{x:66,y:81},{x:47.25,y:90.5},{x:88.25,y:85.5},{x:147.25,y:87.25},{x:26.5,y:96.5},{x:112.75,y:93.5},{x:180,y:91},{x:7.75,y:100.75},{x:134.25,y:104.25},{x:164,y:105},{x:73.5,y:110.25},{x:96.25,y:110},{x:191.25,y:114.5},{x:53.25,y:115},{x:35,y:121.25},{x:119.25,y:119.25},{x:16,y:126.25},{x:149.5,y:122.5},{x:174,y:126.5},{x:87.25,y:134},{x:107.75,y:135},{x:64.75,y:139.25},{x:133.75,y:139},{x:197.75,y:140.25},{x:42.25,y:145},{x:157.75,y:144.25},{x:19.75,y:154},{x:181.25,y:152.25},{x:90,y:159},{x:114,y:158.5},{x:64.25,y:162.75},{x:139.25,y:163.75},{x:1.25,y:167.25},{x:41.5,y:168},{x:162.5,y:171.25},{x:19.25,y:180.75},{x:80.25,y:181.25},{x:103,y:180.25},{x:126.75,y:182},{x:185.75,y:182.75},{x:56.75,y:187},{x:148,y:189},{x:6,y:197.5},{x:38.5,y:197.75},{x:171.75,y:197.5}];
public function FlashTest() {
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
addChild( _loader = new Loader()) ;
_loader.scaleX = _loader.scaleY = FACTOR;
_loader.load(
new URLRequest(
"http://wonderfl.net/static/tmp/related_images/356fb957897514c7ef7478b5c17cf7361c083575m"
));
stage.addEventListener(KeyboardEvent.KEY_DOWN, newCircle);
addChild(_circles = new Sprite());
addChild(_out = new TextField());
for( var i: int = 0; i<_pos.length; ++i) {
var circle: Circle = new Circle();
var pos: * = _pos[i];
circle.x = pos.x*FACTOR;
circle.y = pos.y*FACTOR;
_circles.addChild(circle);
}
}
private function traceData():void {
var result: String = "[\n";
for(var i: int = 0; i<_circles.numChildren;++i) {
var circle: Circle = _circles.getChildAt(i) as Circle;
if( i != 0 ) {
result += ",\n";
}
result += " {x:"+(circle.x/FACTOR)+",y:"+(circle.y/FACTOR)+"}";
}
result += "\n]";
trace(result);
_out.text = result;
_out.autoSize = TextFieldAutoSize.LEFT;
}
private function newCircle(e: KeyboardEvent): void {
if(e.keyCode==65) {
var circle: Circle = new Circle();
circle.x = stage.mouseX;
circle.y = stage.mouseY;
_circles.addChild(circle);
} else if(e.keyCode==67) {
traceData();
}
}
}
}
import flash.events.MouseEvent;
import flash.display.Sprite;
import flash.display.Shape;
const FACTOR: Number = 4.0;
class Circle extends Sprite {
public function Circle() {
graphics.beginFill(0xFFFFFF, 0.4);
graphics.lineStyle(1, 0);
graphics.drawCircle(0, 0, 6*FACTOR);
addEventListener(MouseEvent.MOUSE_DOWN, startDragging);
}
private function startDragging(e: MouseEvent): void {
stage.addEventListener(MouseEvent.MOUSE_MOVE, move);
stage.addEventListener(MouseEvent.MOUSE_UP, stopDragging);
}
private function move(e: MouseEvent): void {
x = e.stageX;
y = e.stageY;
}
private function stopDragging(e: MouseEvent): void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE, move);
stage.removeEventListener(MouseEvent.MOUSE_UP, stopDragging);
}
}
var trace: Function = Wonderfl.log;