Проверка пересечения между Area и Line Java

У меня есть область (синяя) и две точки, из которых я формирую линию. Я хотел бы проверить пересечение между этими двумя объектами. Я попытался преобразовать линию в область с небольшой шириной, но это не работает, поскольку градиент линий не ограничен 0 или не определен.

Визуализация

В качестве альтернативы, если это не самый простой способ проверить прямую видимость между двумя точками, посоветуйте мне другой способ.


person callan    schedule 20.02.2018    source источник
comment
Изображение напоминает мне ответ, который я разместил на stackoverflow.com/a/23971327/3182664, который содержит такие проверки пересечения как один крошечный строительный блок. Может быть полезна дополнительная информация о вашем текущем представлении геометрии. Это действительно java.awt.geom.Line2D объекты и т.д.? Однако, как указал Joe C, ответы на этот вопрос, скорее всего, уже есть.   -  person Marco13    schedule 21.02.2018
comment
@Marco13 Используются java.awt.geom.Area и java.awt.geom.Line2D   -  person callan    schedule 21.02.2018
comment
Ну, код в ответе, на который я ссылался, содержит класс Shapes, который может преобразовать Shape в список сегментов линии, и класс Intersection, который вычисляет пересечение между двумя сегментами линии. Если вы еще не нашли ответ здесь, в stackoverflow, ваш вопрос должен быть гораздо более конкретным.   -  person Marco13    schedule 21.02.2018
comment
@ Marco13 Marco13 Предложение в ветке, на которую вы ссылаетесь, нашло для меня самое простое решение. Это не должно быть на 100% точным, поэтому я создаю область из линии (т. е. многоугольник с 4 точками, где 2 точки — это просто начало и конец, слегка смещенные), а затем проверяю таким образом наличие коллизий. Спасибо   -  person callan    schedule 21.02.2018
comment
@callan получил ответ на твой вопрос?   -  person    schedule 21.02.2018