Нахождение квадратов сетки из линии

Я пытаюсь найти достойный алгоритм, который позволяет мне найти все квадраты, которые пересекает линия, проходя через сетку. Алгоритм Брезенхема не работает в моем сценарии, потому что конечные точки линии не обязательно должны начинаться или заканчиваться в центре квадрата. Даже если он пройдет через угол, квадрат будет засчитан.

Я попробовал поискать в Google, и я не нашел много результатов.

введите описание изображения здесь

Красный — это алгоритм Брезенхема, который делает то, что я хочу, но он работает, только если конечные точки линии начинаются в центре квадрата.
Зеленый мой идеальный сценарий.

0

Решение

Почему бы не следовать «числовому» алгоритму?
Просто оцените конечно большое количество точек в линии.
По координатам точки было бы легко определить, на какой квадрат (ы) они попадают.
(Вы должны добавить новый квадрат в свой список, только когда квадрат, в котором находится точка, отличается от последней точки.)

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]