PHP форум на ПЫХА.РУ

PHP форум на ПЫХА.РУ

Языки программирования => C/C++ и C# => Тема начата: Sinkler от 15 Февраль, 2010, 01:58:43



Название: Нарисовать точки по окружности
Отправлено: Sinkler от 15 Февраль, 2010, 01:58:43
Необходимо нарисовать n точек на равном расстоянии  R  от центра, чтобы между ними было равное расстояние. Интересует алгоритм, реализовать буду на шарпе.


Название: Нарисовать точки по окружности
Отправлено: NRG от 15 Февраль, 2010, 02:17:23
а разве нету метода типа imagecircle() ?
или тебе просто инетересен сам алгоритм ?
Спустя 2 минуты 42 секунды добавил
сори, ступил, поначалу не совсем понял задачу =)
Спустя 44 секунды добавил
сори, ступил, поначалу не совсем понял задачу =)


Название: Нарисовать точки по окружности
Отправлено: md5 от 15 Февраль, 2010, 02:21:44
циркулем епт(


Название: Нарисовать точки по окружности
Отправлено: NRG от 15 Февраль, 2010, 02:23:51
1-й этап.
 
разбиваем нашу окружность на части (360/n)
получаем угол смещения относительно первой точки.
 

2-й этап будет позже    =)
надо подумать =)


Название: Нарисовать точки по окружности
Отправлено: NRG от 15 Февраль, 2010, 02:33:46
длину b мы можем посчитать как неизвесную основу равнобедренного треугольника
Спустя 1 минуту 14 секунд добавил
зы: простите меня за убогий рисунок в пейнте =)
Спустя 1 минуту 2 секунды добавил
а потом волебными вычислениями мы получаем координаты точки №2    =)


Название: Нарисовать точки по окружности
Отправлено: AlexB от 15 Февраль, 2010, 02:42:01

циркулем епт(
Очень сильно заблуждаешься. Погугли на тему "трисекция угла" и убедись, что как раз циркулем в ряде случаев именно это сделать невозможно ...


Название: Нарисовать точки по окружности
Отправлено: Sinkler от 15 Февраль, 2010, 02:47:42

длину b мы можем посчитать как неизвесную основу равнобедренного треугольника
Спустя 1 минуту 14 секунд добавил
зы: простите меня за убогий рисунок в пейнте =)
Спустя 1 минуту 2 секунды добавил
а потом волебными вычислениями мы получаем координаты точки №2    =)

Вот как раз эти волебные вычисления ставят в тупик :)


Название: Нарисовать точки по окружности
Отправлено: Givi от 15 Февраль, 2010, 03:08:52
Sinkler, не помню по синусам и т.д. (короче, нас интересую углы), но думаю что нужно смотреть примерно в эту степь: от начальной точки ведем линию длинной в "b" (как её найти сказал НРГ) под углом к линии "начальная точка - центр". А угол будет равен: (180-(360/кол-во точек))/2
Спустя 1 минуту 19 секунд добавил
п.с. Начальная точка - это первая точка, удаленная от центра на значение "R" (радиус)
Спустя 4 минуты 15 секунд добавил
п.с. 2 Хотя не, хуйня. Нах нам это все, если есть угол от центра и длинна линии до точек (ввиде радиуса).
пиздец какой-то в голове.
Спустя 3 минуты 27 секунд добавил
п.с. 2 Хотя не, хуйня. Нах нам это все, если есть угол от центра и длинна линии до точек (ввиде радиуса).
пиздец какой-то в голове.
Спустя 3 минуты 37 секунд добавил
п.с. 2 Хотя не, хуйня. Нах нам это все, если есть угол от центра и длинна линии до точек (ввиде радиуса).
пиздец какой-то в голове.


Название: Нарисовать точки по окружности
Отправлено: AlexB от 15 Февраль, 2010, 03:22:11
Sinkler, гугли по словам "полярная система координат".
В ней подобные вычисления элементарны и сводятся к делению 2Пи/N
Далее гугли "Формула перевода из полярной в декартову".


Название: Нарисовать точки по окружности
Отправлено: Givi от 15 Февраль, 2010, 03:16:23
ппц. Сервис был не доступен, но обновления к посту прошли. Это ужасно :(


Название: Нарисовать точки по окружности
Отправлено: Sinkler от 15 Февраль, 2010, 03:52:52

Sinkler, гугли по словам "полярная система координат".
В ней подобные вычисления элементарны и сводятся к делению 2Пи/N
Далее гугли "Формула перевода из полярной в декартову".
 

Да и гуглить не надо, учили всё это :) Просто надо повспоминать чуток...
Спустя 1 минуту 53 секунды добавил

Sinkler, гугли по словам "полярная система координат".
В ней подобные вычисления элементарны и сводятся к делению 2Пи/N
Далее гугли "Формула перевода из полярной в декартову".
 


Название: Нарисовать точки по окружности
Отправлено: adw0rd от 15 Февраль, 2010, 04:31:24

ппц. Сервис был не доступен, но обновления к посту прошли. Это ужасно :(
сайт?


Название: Нарисовать точки по окружности
Отправлено: SpartakuS от 15 Февраль, 2010, 04:35:55
adw0rd,
пыха.
Я думаю, что он у тебя так редактировать сообщения просит)


Название: Нарисовать точки по окружности
Отправлено: adw0rd от 15 Февраль, 2010, 04:40:23
Думаю нет, но группу дал.
А по поводу добавления дубляжных постов - это наверное надо склейку переделать....


Название: Нарисовать точки по окружности
Отправлено: NRG от 15 Февраль, 2010, 04:42:59

Думаю нет, но группу дал.
А по поводу добавления дубляжных постов - это наверное надо склейку переделать....
не в склейке дело.
пост отправляется и обрабатывается но соединение отваливается по тайм ауту.
народ жмет ф5, пост отправляется заново...


Название: Нарисовать точки по окружности
Отправлено: SpartakuS от 15 Февраль, 2010, 04:43:52
adw0rd, не... Ну я не имею ввиду, что он это все подстроил, чтобы группу получит :D
Просто ему в данном случае нужно было редактирование.
А склейка норм работает. Просто форум что то подвис, а посты добавлялись :)


Название: Нарисовать точки по окружности
Отправлено: adw0rd от 15 Февраль, 2010, 04:49:51
NRG, ну по идее неважно из-за чего тормоза случаются, они могут всегда случатся... поэтому склейку надо поправить....
хотя проще хуй забить.
 
по поводу тормозов апача - разберусь... пришло время его кильнуть


Название: Нарисовать точки по окружности
Отправлено: Givi от 15 Февраль, 2010, 05:30:53
таки НРГ прав - таймаут был. Но я ж не думал что добавился пост. Два раза обновил, потом только отобразилась страница... а на ней 3 одинаковых поста :)
Эд, спасибо за группу. В целом и не просил, но коли есть, то не помешает. Иногда таки удобней редактировать нежели дописывать исправление.


Название: Нарисовать точки по окружности
Отправлено: Nyaah от 15 Февраль, 2010, 06:28:55
xi = cos(2*PI*i/n)*R + x0;
yi = sin(2*PI*i/n)*R + y0;
 
где:
n - кол-во точек
R - радус окружности
i - текущая точка
x0 y0 - координаты центра окружности


Название: Нарисовать точки по окружности
Отправлено: Sinkler от 15 Февраль, 2010, 06:33:44
Naaayh, спасибо, попробуем, покажемсс =)


Название: Нарисовать точки по окружности
Отправлено: phpdude от 15 Февраль, 2010, 06:35:15
правильный многоугольник хули, чо сложного? :)


Название: Нарисовать точки по окружности
Отправлено: AlexB от 15 Февраль, 2010, 06:42:28

правильный многоугольник хули, чо сложного? :)
Да хули, ничего сложного ...
Правда некоторые граждане потратили 10 лет на простроение всего лишь одного из них:
http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9_65537-%D1%83%D0%B3%D0%BE%D0%BB%D1%8C%D0%BD%D0%B8%D0%BA


Название: Нарисовать точки по окружности
Отправлено: phpdude от 15 Февраль, 2010, 06:46:05
AlexB, в статье понравилось вот что
 
шестѝдесятипятиты̀сячпятисо̀ттридцатисемиуго́льник
Спустя 2 минуты 1 секунду добавил
# Если нарисовать 65537-угольник с длиной одной стороны 1 см, то его диаметр будет больше 200 м.
# Если нарисовать 65537-угольник диаметром 20 см, то длина одной его стороны окажется менее одной десятой толщины самого тонкого человеческого волоса.

я не математик, но мне кажется что ТОТ кто такие статьи читает И ТАК ДОЛЖЕН это представлять в ГОЛОВЕ .. хз нахуй это пишут, может просто я такой потому что в школе любил математику, но образовываться пошел на физика :D


Название: Нарисовать точки по окружности
Отправлено: AlexB от 15 Февраль, 2010, 06:47:52
шестѝдесятипятиты̀сячпятисо̀ттридцатисемиуго́льник

Ну что делать, если после 257 следующее число ферма только 65537 ...
пришлось потрудится )))


Название: Нарисовать точки по окружности
Отправлено: phpdude от 15 Февраль, 2010, 06:47:26

Ну что делать, если после 257 следующее число ферма только 65537 ...
пришлось потрудится )))
извращенцы =)
 
не ну мир не без мудаков это факт, например мы - тоже мудаки


Название: Нарисовать точки по окружности
Отправлено: welder от 15 Февраль, 2010, 08:44:28
чот я делал при помощи пихи тогда ещё на пхпфоруме
 
http://pyha.ru/forum/topic/135.0


PHP форум на ПЫХА.РУ