Реализации алгоритмов/Алгоритм DDA-линии: различия между версиями
Содержимое удалено Содержимое добавлено
РоманСузи (обсуждение | вклад) перенесено из w:Алгоритм DDA-линии |
DannyS712 (обсуждение | вклад) м <source> -> <syntaxhighlight> (phab:T237267) |
||
Строка 6:
Значения вспомогательных переменных <math>x</math> и <math>y</math> здесь сохраняются в виде массивов.
<
void dda_line (float x1, float y1, float x2, float y2)
{
Строка 39:
/* -------------------------------*/
}
</syntaxhighlight>
оптимизированный алгоритм, вместо деления использует побитовое смещение.
sx, sy — начало линии tx, ty — конец линии. Применяется в случае если использование переменных с плавающей запятой (float, double и т. п.) невозможно в виду каких либо ограничений.
<
int l, dx, dy;
int xr = Math.abs(tx-sx);
Строка 65:
py += dy;
}
</syntaxhighlight>
{{BookCat}}
|