Вниз
Скачать: CL | DM;

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

 
Сашок   (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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.038 c
1-1101252517
Bobby Digital
2004-11-24 02:28
2004.12.12
Icon


4-1098876608
VZup
2004-10-27 15:30
2004.12.12
OpenDialog - кто сталкивался???


14-1100691914
Marser_t
2004-11-17 14:45
2004.12.12
Антология демагогии


1-1101750137
Davinchi
2004-11-29 20:42
2004.12.12
PChar TO String


4-1098804856
dms_main
2004-10-26 19:34
2004.12.12
Потоки. Waitfor.




   Наверх