2011-07-15 10 views
0

私はlineToでグラフを描画しています。Actionscript 2:lineToからY座標を取得

私がしたいことは、行のすべてのx座標をループすることです.Y座標を取得して配列にプッシュするには、どのようにY座標が各X座標にあるのか分かりますか?

+0

2つのxポイント間のy値を知りたいですか?エクササイズブックにグラフを描き、特定のxで値を読み取るようなものですか?言い換えれば、グラフを描画するために使用された与えられた点の間の値を補間する方法を尋ねていますか? – anemgyenge

+0

私は言うつもりはありません私はあなたを誤解しています。私はlineTo関数を持っています、私はlineToの開始X点とlineToの終了X点をとり、すべてのX値inbetweenをループして対応するY値(XのY値の行)を取得したいそのY値を配列にプッシュします。 –

答えて

0
var lineStartX=10; 
var lineStartY=10; 
var lineEndX=450; 
var lineEndY=300; 
this.lineStyle(5, 0xFF00FF, 100); 
this.moveTo(lineStartX, lineStartY); 
this.lineTo(lineEndX, lineEndY); 

var ratio=(lineEndY-lineStartY)/(lineEndX-lineStartX); 
for (var yV:Number=0; yV<=lineEndY-lineStartY; yV+=5) { 
var xV=yV/ratio+lineStartX; 

//Vizualize// 
this.lineStyle(2, 0xFFF0F0, 100); 
this.moveTo(xV, yV+lineStartY); 
this.lineTo(xV+1, yV+lineStartY+1); 
} 

for (var xV:Number=0; xV<=lineEndX-lineStartX; xV+=5) { 
var yV=xV*ratio+lineStartY; 
} 
+0

ありがとう、私は実際にヘッダーでタイプミスをして、xcoordではなく、それぞれのxcoordを使ってYcoordを取得したかったのです...これは正しいでしょうか?:var ratio =(lineEndY-lineStartY)/(lineEndX-lineStartX); for(var xV:Number = 0; xV <= lineEndX-lineStartX; xV ++){var yV =(xV-lineStartY)* ratio' –

+0

答えのコードを更新しました – DigitalD

+0

ありがとう、働いています:) –

0

各点を最初に配列に入れた後、配列を繰り返して線を描画することで、より多くの成功を収めることができます。このようにして、特定の座標を知りたい場合は、配列内で参照されます。

+0

行を作成するときは、xcoordinate単位では行いません。あなたはxの開始からxの行を終えるまでそれを行います。 –

関連する問題