|
| | Усредненное движение валют - Отрисовка графика (Flash) | << | >> |
package {
import flash.display.*;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
import flash.text.TextField;
import flash.display.MovieClip;
import flash.external.ExternalInterface;
public class GraphicsExample extends Sprite {
private var textLabel:TextField;
public function GraphicsExample() {
var sm1:uint = 50;
var sm2:uint = 100;
var k:uint;
var x:uint;
x = 0;
y = 0;
for (var i:uint = 0; i < 5; i++)
{
textLabel = new TextField();
textLabel.x = x;
textLabel.y = y;
x+=70;
if(i > 0) x+=40;
textLabel.text = ExternalInterface.call("captionValuta",i);
addChild(textLabel);
}
y = 18;
x = 0;
sm1 = 12;
var nRows:uint;
var s:String;
nRows = ExternalInterface.call("nRowsValuta");
for (var i:uint = 0; i < nRows; i++)
{
textLabel = new TextField();
textLabel.x = x;
textLabel.y = y;
y+=sm1;
s = ExternalInterface.call("dataGrafic",4*i,0);
k = s.length;
k -=2;
s = s.substr(0,k);
s +="00";
textLabel.text = s;
addChild(textLabel);
}
x = 45; y = 21; var x2:uint = 465;
var hLines:Shape = new Shape();
hLines.graphics.lineStyle(1, 0x000000, 0.2);
hLines.graphics.beginFill(0xFF0000);
for (var i:uint = 0; i < nRows + 1; i++)
{
hLines.graphics.moveTo(x, y);
hLines.graphics.lineTo(x+x2, y);
y += sm1;
}
hLines.graphics.endFill();
addChild(hLines);
nRows = nRows*4;
var g:Array = new Array(nRows);
var z:Number;
var gMin:Number;
var gMax:Number;
var step:Number;
x = 70;
for (var v:uint = 1; v < 5; v++)
{
z = ExternalInterface.call("dataGrafic",0,v);
gMin = z;
gMax = z;
y = 21;
for (var i:uint = 1; i < nRows; i++)
{
z = ExternalInterface.call("dataGrafic",i,v);
if(z > gMax) gMax = z;
if(z < gMin) gMin = z;
g[i] = z;
}
step = (gMax - gMin) / 100.0;
var gLines:Shape = new Shape();
gLines.graphics.lineStyle(2, 0x00FF00, 0.8);
gLines.graphics.beginFill(0xFF0000);
for (var i:uint = 0; i < nRows + 1; i++)
{
x2 = (g[i] - gMin)/step + 5;
gLines.graphics.moveTo(x, y);
gLines.graphics.lineTo(x+x2, y);
y += sm1/4;
}
gLines.graphics.endFill();
addChild(gLines);
x += 110;
}
/*
textLabel = new TextField();
textLabel.text = ExternalInterface.call("dataGrafic",0,v);
addChild(textLabel);
textLabel.x = 50;
*/
this.y = 0;
this.x = 0;
}
}
}
|
|