Я искал Интернет и, возможно, мне не хватает правильных ключевых слов, но мне не удалось найти ничего подобного. Я нашел только полилинии (или просто строки), которые не являются точными графами. Я хотел бы создать схему графика (радиуса r), как видно на рисунке. Есть ли что-то уже доступное? Я бы хотел избежать повторного использования колеса, так сказать.Есть ли алгоритм для создания схемы графика?
Если кто-то может на меня намек на что-то или, по крайней мере, на каком-то базовом принципе, как сделать это было бы здорово. В противном случае я, конечно, буду «изобретать» один.
Оптимально в C#.
Обновление: Мне нужно рассчитать контур полигона, а не просто визуально нарисовать его. Зеленые точки представляют собой полученный многоугольник. Также «внутренние» отверстия полностью игнорируются. Достаточно всего одного многоугольника.
Обновление 2: Лучшее изображение, чтобы показать некоторые более экстремальные случаи. Также края графа никогда не перекрываются, поэтому нет необходимости приспосабливаться к этому.
Обновление 3: Картинка обновлена еще раз, чтобы отразить скос.
как рисовать каждый край толщиной 2р? что будет контур графика заполнен! – dotctor
О, мне не нужно рисовать его, но вычислить полученный многоугольник. Я отредактирую вопрос, чтобы это отразить. Хорошая точка зрения. – SmartK8
Какие углы будут? Если угол, подобный одному в левом верхнем углу, становится все меньше и меньше, что должно произойти с контуром? если он двинется в бесконечность? Также: могут ли линии приближаться, чтобы объединить контуры? – TaW