Цитата:
Потому что у нас уже есть vector.
К чему плодить лишний код.
|
Вы наверное об этом? Да, так на строчку короче! Но эта разница достойна того, кто вообще не пользуется фраймворками, которые содержат чересчур много излишеств

А ещё и нативный метод на 40% медленнее, а Point я использовал только для того, чтобы ТС было понятней.

Код AS3:
public static function drawDottedLine(graphics:Graphics, start:Point, finish:Point, doteLineSize:Number = 5, gap:Number = 5):Graphics
{
var vector:Point = new Point(finish.x - start.x, finish.y - start.y);
var unitVector:Point = new Point(vector.x / length, vector.y / length);
var fullStep:Number = doteLineSize + gap;
var iterations:int = vector.length / fullStep;
var roulette:Number = 0
for (var i:int = 0; i < iterations; i++)
{
graphics.moveTo(start.x + roulette * unitVector.x, start.y + roulette * unitVector.y);
roulette += doteLineSize;
graphics.lineTo(start.x + unitVector.x * roulette, start.y + unitVector.y * roulette);
roulette += gap;
}
return graphics;
}