Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Вниз

Отступ от точек   Найти похожие ветки 

 
Сашок   (2004-08-31 14:42) [0]

Мастера, помогите решить такую проблему. Есть двумерный многоугольник. Известны координаты вершин и их последовательность по часовой стрелки. Как сделать обрамление данного многоугольника, т.е. нарисовать еще один, больший,чтобы грани находились на одинаковом расстоянии от оригинального?


 
MBo ©   (2004-08-31 14:49) [1]

Если многоугольник выпуклый, то проще всего так - для каждой вершины строим точку, находящуюся на биссектрисе угла (fi) при этой вершине, на расстоянии d/cos(fi/2)


 
WQERTY   (2004-08-31 15:02) [2]

Умножить координаты на матрицу растяжения


 
Сашок   (2004-08-31 17:41) [3]

Спаксибо, попробую


 
Сашок   (2004-08-31 17:41) [4]

Спасибо, попробую


 
Рыба ©   (2004-09-09 22:05) [5]

>MBo ©  (31.08.04 14:49) [1]

А если многоугольник не выпуклый, есть какое-то решение?


 
MBo ©   (2004-09-10 07:14) [6]

>Рыба ©   (09.09.04 22:05) [5]
Универсального нет, насколько я понимаю - проблема в том, как интерпретировать пересечения углов внешней оболочки, которые возникают при увеличении отступа. Например, Microsoft в функции WidenPath никак не стала с этим бороться - возникают мерзкие петли.



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2004.12.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.034 c
1-1101457271
Zik
2004-11-26 11:21
2004.12.12
Общие вопросы


3-1100246373
a_tereshin
2004-11-12 10:59
2004.12.12
Как получить список доступных алиасов


1-1101848922
Kolan
2004-12-01 00:08
2004.12.12
Перенос Series


4-1098882908
Yong
2004-10-27 17:15
2004.12.12
Как отловить MouseMove на форме


14-1101161834
Rand
2004-11-23 01:17
2004.12.12
Я вернулся!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский