Проверьте, является ли многоугольник самопересекающимся

Напишите код сами и прочитайте код, который был написан быть кем-то еще. Но, не кто-либо еще; из человека, в котором Вы уверены, что он пишет хороший, чистый, умный код.

17
задан GWLlosa 2 February 2011 в 15:10
поделиться

1 ответ

Для полноты картины я добавлю еще один алгоритм к этому обсуждению.

Предполагая, что читатель знает об ограничивающих прямоугольниках, выровненных по оси (если нет, то Google). Очень быстро можно найти пары ребер, у которых есть конфликты AABB, с использованием «алгоритма развертки и обрезки». (погугли это). Затем для этих пар вызываются процедуры пересечения.

Преимущество здесь в том, что вы можете даже пересекать непрямой край (круги и сплайны), и этот подход является более общим, хотя и почти таким же эффективным.

2
ответ дан 30 November 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: