flash on 2012-1-4
♥0 |
Line 82 |
Modified 2012-01-04 00:25:32 |
MIT License
archived:2017-03-20 17:21:18
ActionScript3 source code
/**
* Copyright jules ( http://wonderfl.net/user/jules )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/pp8L
*/
package {
import flash.display.Sprite;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class FlashTest extends Sprite {
public var v2_mc:MovieClip;
public var rot_mc:MovieClip;
public var v1_mc:MovieClip;
public var distance_txt:String = "666";
public const STICKS_WIDTH:Number = 100;
public const DEG_TO_RAD:Number = 0.0174533;
public const RAD_TO_DEG:Number = 57.2958;
public const PLUS_90_DEG:Number = 1.5708;
public var v1_x1:Number;
public var v1_y1:Number;
public var v1_x2:Number;
public var v1_y2:Number;
public var v2_x1:Number;
public var v2_y1:Number;
public var v2_x2:Number;
public var v2_y2:Number;
public var distance:Number;
public var facing:Boolean;
public var dx:Number;
public var dy:Number;
public var both_len_sqrt:Number;
public var distance_txt2:String ="666";
public function FlashTest() {
// write as3 code here..
trace("egg");
v1_mc.rotation = rot_mc.rot * RAD_TO_DEG;
/*
v2_mc.rotation = v1_mc.rotation;
v1_x1 = v1_mc.x;
v1_y1 = v1_mc.y;
v1_x2 = v1_x1 + Math.cos(rot_mc.rot) * v1_mc.stick_len;
v1_y2 = v1_y1 + Math.sin(rot_mc.rot) * v1_mc.stick_len;
v2_x1 = v2_mc.x;
v2_y1 = v2_mc.y;
v2_x2 = v2_x1 + Math.cos(rot_mc.rot) * v2_mc.stick_len;
v2_y2 = v2_y1 + Math.sin(rot_mc.rot) * v2_mc.stick_len;
*/
//getParallelDistance();
var tf:TextField = new TextField();
tf.text = "Hello World!!!";
//tf.text = distance_txt;
tf.autoSize = "left";
tf.setTextFormat(new TextFormat("_self",48,0x000000));
tf.x = 30 + (400 - tf.width) / 2;
tf.y = 30 + (300 - tf.height) / 2;
tf.selectable = false;
addChild(tf);
}
public function getParallelDistance() : void
{
var _loc_1:* = v2_y2 - v2_y1;
var _loc_2:* = v2_x2 - v2_x1;
if (_loc_2 == 0)
{
_loc_2 = 1e-019;
}// end if
var _loc_3:* = _loc_1 / _loc_2;
var _loc_4:* = v2_y1 - _loc_3 * v2_x1;
var _loc_5:* = _loc_2 * _loc_4;
distance = (_loc_1 * v1_x1 + (-_loc_2) * v1_y1 + _loc_5) / Math.sqrt(_loc_1 * _loc_1 + _loc_2 * _loc_2);
var _loc_6:* = _loc_1 * _loc_1 + _loc_2 * _loc_2;
var _loc_7:* = Math.abs(_loc_1 * v1_x1 + _loc_2 * v1_y1);
var _loc_8:* = _loc_1 * _loc_7 / _loc_6;
var _loc_9:* = _loc_2 * _loc_7 / _loc_6;
var _loc_10:* = Math.sqrt(_loc_8 * _loc_8 + _loc_9 * _loc_9);
distance = distance * -1;
dx = _loc_8 / _loc_10;
dy = (-_loc_9) / _loc_10;
var _loc_11:* = distance * dx;
var _loc_12:* = distance * dy;
var _loc_13:* = v1_x1 + _loc_11;
var _loc_14:* = v1_y1 + _loc_12;
var _loc_15:* = v1_x2 + _loc_11;
var _loc_16:* = v1_y2 + _loc_12;
var _loc_17:* = Math.max(Math.max(Math.pow(v2_x2 - _loc_15, 2) + Math.pow(v2_y2 - _loc_16, 2), Math.pow(v2_x1 - _loc_15, 2) + Math.pow(v2_y1 - _loc_16, 2)), Math.max(Math.pow(v2_x2 - _loc_13, 2) + Math.pow(v2_y2 - _loc_14, 2), Math.pow(v2_x1 - _loc_13, 2) + Math.pow(v2_y1 - _loc_14, 2)));
facing = _loc_17 <= both_len_sqrt;
//facing = true;
if (facing)
{
distance_txt = Math.abs(distance).toString();
}
else
{
distance_txt= "not detected";
}// end else if
return;
}// end function
}
}