Function line_drawing::walk_grid
[−]
[src]
pub fn walk_grid(
start: (isize, isize),
end: (isize, isize)
) -> Vec<(isize, isize)>
Walk along a grid, taking only orthagonal steps.
See this section of the article for an interactive demonstration.
Note that this algorithm isn't symetrical; if you swap start
and end
, the reversed line
might not be the same. See sorted_walk_grid
for a version that sorts the points so that
the line will be the same.
Example:
extern crate line_drawing; use line_drawing::walk_grid; fn main() { for (x, y) in walk_grid((0, 0), (5, 3)) { println!("{}, {}", x, y); } }
Should print out:
0, 0
1, 0
1, 1
2, 1
2, 2
3, 2
4, 2
4, 3
5, 3