| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > Нарисованная окружность |
| Автор: PMOLO 8.5.2012, 11:16 |
| Дан рисунок, на котором изображена окружность. Построить в эту окружность вписанный квадрат. По какому алгоритму можно построить туда вписанный квадрат? Подскажите! |
| Автор: Skevalt 8.5.2012, 11:27 |
| Можно попробовать такой алгоритм, если рассматривать рисунок, как черно-белый bitmap, например: 1) найти центр масс пикселей черного цвета - так определится центр окружности 2) найти самый левый и самый правый черный пиксель - так определится диаметр окружности 3) зная координаты центра окружности и диаметр, можно найти координаты вершин вписанного квадрата следующим образом (x0 - r; y0) (x0 + r; y0) (x0; y0 - r) (x0; y0 + r) Таким образом, получится квадрат, вписанный в окружность (квадрат будет "стоять" на угле, т.е., повернут на 45 градусов) |
| Автор: PMOLO 8.5.2012, 11:38 |
| Спасибо, попробую так сделать! |
| Автор: Skevalt 8.5.2012, 11:41 |
| Можно даже не искать центры масс, а найти координаты самого левого, правого, верхнего и нижнего пикселя, соответственно, откуда выразить координаты центра. |