Скругление вершин многоугольника | |
---|---|
Extortioner Сообщений: 854 Откуда: Новосибирск Дата регистрации: 06.10.2005 |
Давайте предположим, что у нас есть многоугольник с N вершинами. Пусть каждая вершина задаётся парой координат (X,Y). Зная координаты всех вершин мы можем построить этот многоугольник. Можно ли каким-либо образом построить фигуру с плавными линиями, проходящими через все вершины данного многоугольника? То есть к примеру Квадрат преобразуется в Круг, Прямоугольник в Овал и т.д.
|
Re: Скругление вершин многоугольника | |
---|---|
sphinx Сообщений: 31182 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Задача на алгоритм скругления угла в многоугольнике? А что известно про радиус скругления?
Скругление по заданному радиусу (геометрическое решение): www.granitvtd.ru ingraf.ru ------------------ "Veni, vidi, vici!"(с) Исправлено 2 раз(а). Последнее : sphinx, 30.11.09 10:43 |
Re: Скругление вершин многоугольника | |
---|---|
sphinx Сообщений: 31182 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
|
Re: Скругление вершин многоугольника | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Слишком нечёткая постановка задачи. Взять тот-же квадрат - почему это он "скругляется" в окружность, пересекающую вершины, а не например в 2 полуокружности и 2 стороны исходного квадрата между ними, или вообще в сложную, частично "вогнутую" фигуру? Или именно в квадрат, но со "слегка скруглёнными" углами?
Обычное сопяржение углов (дугами окружностей) делается так, что кривая НЕ проходит через саму вершину угла - она лишь к СТОРОНАМ угла плавно прилегает... Т.е. для квадрата в предельном случае получится круг ВПИСАННЫЙ в исходный квадрат. ------------------ WBR, Igor |
Re: Скругление вершин многоугольника | |
---|---|
Extortioner Сообщений: 854 Откуда: Новосибирск Дата регистрации: 06.10.2005 |
Мне интересен вариант, который получается в Corel Draw - там берёшь к примеру прямоугольник, переводишь его в кривые, потом щёлкаешь на каждой вершине и говоришь Symmetrical после этого преобразования квадрат превращается в круг, прямоугольник в эллипс и тп.
|
Re: Скругление вершин многоугольника | |
---|---|
Extortioner Сообщений: 854 Откуда: Новосибирск Дата регистрации: 06.10.2005 |
Интересно мне это вот с какой точки зрения - есть такая штука, называется польский формат - это формат описания примитивов на векторной географической карте. Дак вот там все горизонтали, границы зон и тп (топографическая карта) представлены в виде отрезков, естественно, что эти отрезки лишь приблизительно повторяют контуры естественных объектов. Но если попробовать при помощи такого скругления обработать ломаную линию, то она скорее всего очень близко ляжет с настоящей.
|
Re: Скругление вершин многоугольника | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Боюсь что там несколько иное "скругление" используется... Что-то не могу в гугле найти информацию по теме - видать ЖПС-ники сильно зашифровались и не открывают инфу даже поисковым ботам, или я просто не могу сформулировать вопрос корректно
------------------ WBR, Igor |
Re: Скругление вершин многоугольника | |
---|---|
ssa Сообщений: 13008 Откуда: Москва Дата регистрации: 23.03.2005 |
Такое "скругление" вроде бы всегда называлось аппроксимацией кривых кусками прямых. ------------------ Лень - это неосознанная мудрость. |
Re: Скругление вершин многоугольника | |
---|---|
leonid Сообщений: 3204 Откуда: Рига Дата регистрации: 03.02.2006 |
Corel в данном случае использует кривые Безье
ru.wikipedia.org |
Re: Скругление вершин многоугольника | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Леонид, но они же не проходят "через точки"... Точки лишь направляют "изгибы" кривой. Потому я сразу и отбросил этот вариант.
Кстати, кривые Безье фокс рисует если PolyPoints задействовать ------------------ WBR, Igor |
Re: Скругление вершин многоугольника | |
---|---|
Extortioner Сообщений: 854 Откуда: Новосибирск Дата регистрации: 06.10.2005 |
Да, точно, это вроде аппроксимацией называлось Помнил, же когда экспериментальную физику учил
Кстати на самом деле результирующая кривая может и не проходить через все вершины. Видимо на самом деле надо попробовать покопать в сторону аппроксимации и кривых Безье |
Re: Скругление вершин многоугольника | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Ну если не проходит, тогда да, попробуй - только учти, что реально кривая может оказаться ВЕСЬМА далеко от задающей точки... Причём если точек много, то они могут быть по разные стороны от кривой (т.е. для замкнутого многоугольника они будут как "внутри", так и "снаружи").
------------------ WBR, Igor |
Re: Скругление вершин многоугольника | |
---|---|
Рома Автор Сообщений: 1079 Дата регистрации: 06.06.2001 |
В принципе, можно решить и с помощью аппроксимации кубическими сплайнами. См. вложение. |
© 2000-2024 Fox Club  |