Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Разбить акружночть на точки с определённым шагом, получить массив точек окружности с задан 
:(
    Опции темы
gribikc
  Дата 30.8.2010, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 9.2.2003

Репутация: нет
Всего: нет



Добрый день необходимо "апроксимировать" акружность прямыми тоесть получить массив точек. в качестве исходных данных задана текущая точка радиус угол раскрыва и в какую сторону смотрит окружность. задача преобразовать это в пиксели с заданным шагом шаг грубо говоря пиксель

Добавлено через 1 минуту и 14 секунд
тоесть получить массив точек окружности


--------------------
---------------------------------------------
Заранее спасибо!!!
PM WWW ICQ   Вверх
djamshud
Дата 30.8.2010, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: нет
Всего: 39



Решайте, сколько отрезков вам нужно. Фактически это разбиение 360 градусного угла на сегменты, т.е. если нужно четыре отрезка, то сегменты 90-градусные. Дальше, у вас есть отправная точка - центр окружности, ее координаты известны - x0 и y0. Таким образом координаты точек на окружности вычисляются так (вот тут я на сто рпоцентов не уверен, геометрию подзабыл уже):

x_i=x0+r*cos(a_i)
y_i=y0+r*sin(a_i)

где a_i - угол сегмента относительно начала.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
gribikc
Дата 30.8.2010, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 9.2.2003

Репутация: нет
Всего: нет



нет ту не сегменты по углам нужны...

грубо говоря я могу делать шаг в 4ре направления (верх низ лево право) и надо вот так нарисовать окружность с заданными параметрами и после каждого шага проверять там ли я где надо...


--------------------
---------------------------------------------
Заранее спасибо!!!
PM WWW ICQ   Вверх
Earnest
Дата 30.8.2010, 15:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 7
Всего: 183



Тогда ищи алгоритм Брезенхема для растеризации окружности. Его в двух словах не опишешь.
 


--------------------
...
PM   Вверх
gribikc
Дата 31.8.2010, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 9.2.2003

Репутация: нет
Всего: нет



спасибо


--------------------
---------------------------------------------
Заранее спасибо!!!
PM WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0785 ]   [ Использовано запросов: 20 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.