1
8
9 import com.sekati.geom.Point;
10
11
14 class com.sekati.draw.Line {
15
16 private var _mc:MovieClip;
17 public var _p1:Point;
18 public var _p2:Point;
19 public var _sw:Number;
20 public var _sc:Number;
21 public var _sa:Number;
22
23
33 public function Line(mc:MovieClip, p1:Point, p2:Point, strokeWeight:Number, strokeColor:Number, strokeAlpha:Number) {
34 _mc = mc;
35 _sw = (!strokeWeight) ? undefined : strokeWeight;
36 _sc = (isNaN( strokeColor )) ? 0x000000 : strokeColor;
37 _sa = (isNaN( strokeAlpha )) ? 100 : strokeAlpha;
38 _p1 = p1;
39 _p2 = p2;
40 draw( );
41 }
42
43
47 public function draw():Void {
48 _mc.clear( );
49 _mc.lineStyle( _sw, _sc, _sa, true, "none", "square", "miter", 1.414 );
50 _mc.moveTo( _p1.x, _p1.y );
51 _mc.lineTo( _p2.x, _p2.y );
52 }
53
54 public function get p1x():Number {
55 return _p1.x;
56 }
57
58 public function set p1x(n:Number):Void {
59 _p1.x = n;
60 draw( );
61 }
62
63 public function get p1y():Number {
64 return _p1.y;
65 }
66
67 public function set p1y(n:Number):Void {
68 _p1.y = n;
69 draw( );
70 }
71
72 public function get p2x():Number {
73 return _p2.x;
74 }
75
76 public function set p2x(n:Number):Void {
77 _p2.x = n;
78 draw( );
79 }
80
81 public function get p2y():Number {
82 return _p2.y;
83 }
84
85 public function set p2y(n:Number):Void {
86 _p2.y = n;
87 draw( );
88 }
89 }