Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Simplified Bresenham's line algorithm: What does it *exactly* do?
- int dx = Math.abs(x2 - x1);
- int dy = Math.abs(y2 - y1);
- int sx = (x1 < x2) ? 1 : -1;
- int sy = (y1 < y2) ? 1 : -1;
- int err = dx - dy;
- while (true) {
- framebuffer.setPixel(x1, y1, Vec3.one);
- if (x1 == x2 && y1 == y2) {
- break;
- }
- int e2 = 2 * err;
- if (e2 > -dy) {
- err = err - dy;
- x1 = x1 + sx;
- }
- if (e2 < dx) {
- err = err + dx;
- y1 = y1 + sy;
- }
- }
- err = err - dy;
- x1 = x1 + sx;
- err = err + dx;
- y1 = y1 + sy;
Add Comment
Please, Sign In to add comment