У меня есть две координаты GPS (p, q)
это конечные точки сегмента. У меня есть третье замечание c
который является центром круга с радиусом r
, Моя цель — найти множество точек пересечения X
между этими двумя геометриями.
Может быть не менее 0 и не более 2 пересечений. Я не нашел эллипса или круга, подобного геометрии, в буст-геометрии. Существует ли какая-либо стратегия пересечения, которая дает точку пересечения x
который r
расстояние от c
?
Boost Geometry не имеет понятия круга.
Обычный способ аппроксимации круга — это генерация правильного n-гона, где N в приоритете.
Вместо этого вы можете использовать k-ближайший поиск для конечных точек отрезка: boost :: geometry: ближайшие соседи по кругу — это ответило бы на подмножество вопросов, отвечающих вашим описанием вопроса.
Других решений пока нет …