Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.09;
Скачать: CL | DM;

Вниз

Сортировка точек   Найти похожие ветки 

 
alsov ©   (2008-02-04 17:29) [0]

Приветствую, Мастера

Помогите пожалуйста в решении задачки.

Есть массив точек, лежащих на окружности.
Как отсортировать их по часовой стрелке?

Точки окружности нахожу по алгоритму Мичнера.
Вот тут описано http://algolist.manual.ru/graphics/painting/circle.php

Заранее спасибо.


 
хам   (2008-02-04 17:30) [1]

Найти центр окружности, дпльшн сортровать по результату функции arctan2


 
oldman ©   (2008-02-04 17:33) [2]

Собственно по координатам.
Если принять центр за 0, то х и у становятся очень понятными.
И без всякого arctan2.


 
TUser ©   (2008-02-04 17:45) [3]

Переводи в полярные координаты.


 
ketmar ©   (2008-02-04 17:49) [4]

>[1] хам (04.02.08 17:30)
не усложняй. сказали же: «на окружности». потому квадрант можно определить и без тригонометрии.


 
oldman ©   (2008-02-04 17:57) [5]


> потому квадрант можно определить и без тригонометрии.


+1
что я и сказал в [2]


 
alsov ©   (2008-02-04 18:16) [6]


> oldman ©   (04.02.08 17:33) [2]
>
> Собственно по координатам.
> Если принять центр за 0, то х и у становятся очень понятными.
>


Если я правильно понял то после приведения координат для точек, принадлежащих каждой четверти квадранта нужно отдельную сортировку делать?


 
oldman ©   (2008-02-04 18:27) [7]


> alsov ©   (04.02.08 18:16) [6]


У тебя с математикой ваще хреново?
1 квадрант - x>0, y>0
2 квадрант - x>0, y<0
3 квадрант - x<0, y<0
4 квадрант - x<0, y>0

в чем проблема?
у тебя там что, точек несколько миллионов?
для несколькоих тысяч сортировка занимает несколько секунд.


 
alsov ©   (2008-02-04 18:33) [8]


> 1 квадрант - x>0, y>0
> 2 квадрант - x>0, y<0
> 3 квадрант - x<0, y<0
> 4 квадрант - x<0, y>0

Это понятно


> в чем проблема?

набор точек - результат sql запроса
вот и думаю как лучше сделать


 
ketmar ©   (2008-02-04 18:35) [9]

>[5] oldman ©(04.02.08 17:57)
ну да, я на твой ответ и намекал.

>[6] alsov ©(04.02.08 18:16)
зачем отдельно? одной функцией и проверяй. «многоуровневая» сортировка: сначала проверяешь квадранты, потом в зависимости от квадранта координаты. несколько простых условий.


 
ketmar ©   (2008-02-04 18:35) [10]

>[7] oldman ©(04.02.08 18:27)
>для несколькоих тысяч сортировка занимает несколько секунд.
ты забыл приставку «милли» или «микро»? %-)


 
ketmar ©   (2008-02-04 18:36) [11]

>[8] alsov ©(04.02.08 18:33)
>набор точек - результат sql запроса

вы что, сговорились сегодня мою психику травмировать?!


 
alsov ©   (2008-02-04 18:45) [12]


> ketmar ©   (04.02.08 18:36) [11]

Ни в коем случае не хотел



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

Текущий архив: 2008.03.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.023 c
11-1184499935
Lex1
2007-07-15 15:45
2008.03.09
KOL поддерживает регулярные выражения?


15-1201858238
Галинка
2008-02-01 12:30
2008.03.09
Посоветйте книгу по SQL С ЗАДАНИЯМИ


15-1201787088
saNat
2008-01-31 16:44
2008.03.09
Подскажите, пожалуйста, м... компонент для отображения формул


2-1202875687
Shousheng
2008-02-13 07:08
2008.03.09
memo добавление текста


4-1184142086
Углук
2007-07-11 12:21
2008.03.09
Перечисление дочерних окон