Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Anatoly Kochubey                     2:5020/400     30 Apr 2003  15:07:05
 To : Sergey Voloshchuk
 Subject : Re: Усреднение угл
 -------------------------------------------------------------------------------- 
 
 Привет,
 
 Мне кажется, что для двух углов можно так:
 
 1. Прибавить к каждому из углов 360 - все углы станут положительные.
 2. Взять остаток от деления на 360 - все углы окажутся в первом "обороте".
 
 Вообще, у двух углов (напр. 1 и 359) есть два "средних" - "большой" (180) и
 "малый" (0). Разница между ними - 180 градусов.
 Практическую ценность, как я понимаю, имеет "малый"   ;-)
 
 3. Взять среднее арифметическое (можем получить как "большой", так и "малый"
 угол).
 4. Если разность углов больше 180:
     4а. отнять (или прибавить, без разницы) 180 от результата и
 "нормировать" (п 1, 2) результат.
     4б. (взятия остатка) если результат > 180, отнять 180, если меньше -
 прибавить 180.
 
 pseudo-code:
 
 int avgAngle(int angle1, int angle2) {
     int result = 0;
     angles1 = (angles1 + 360) % 360;
     angles2 = (angles2 + 360) % 360;
     result = (angle1 + angle2) / 2;
     if(abs(angle1 - angle2) > 180) {
         result -= 180;
         result = (result + 360) % 360;
     }
     return result;
 }
 
 А вообще, для N углов, если допустима нецелочисленная арифметика, надо
 представить каждый угол единичным вектором (cos, sin) и посчитать их
 векторную сумму. Угол поворота вектора и есть искомый. Только вот для N
 углов "среднего" может и не быть (при длине вектора = 0).
 В этом случае, имхо, при четном числе углов за "средний" можно будет принять
 любой средний из двух соседних, а при нечетном - любой из исходных (с
 "периодом" 360 / N).
 
 bw, Anatoly
 
 ----- Original Message -----
 From: "Sergey Voloshchuk" <sww.kedr@overta.ru>
 Newsgroups: fido7.ru.algorithms
 To: "George Shuklin" <fido7.ru.algorithms@talk.ru>
 Sent: Wednesday, April 30, 2003 8:09 AM
 Subject: Re: Усреднение угл - fido7.ru.algorithms
 > > Приведи всё к +-180 градусов. Как раз ноль и будет.
 > >
 > +179 и -179 - средний 0, а должно быть 180
 >
 >
 > --
 > Адрес этого сообщения в WWW: http://talk.mail.ru/article-25418096.html
 > Пользовательское Соглашение: http://talk.mail.ru/agreement.html
 > Для отмены подписки отправьте пустое письмо по адресу:
 
 fido7.ru.algorithms-unsubscribe@talk.ru
 -- 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.Mail.Ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Усреднение углов   Kirill Palamartchouk   20 Apr 2003 12:43:23 
 Усреднение углов   Vladimir Vassilevsky   20 Apr 2003 17:30:04 
 Усреднение углов   vitalie vrabie   20 Apr 2003 20:27:54 
 Усреднение углов   Vladimir Vassilevsky   21 Apr 2003 04:25:34 
 Усреднение углов   vitalie vrabie   21 Apr 2003 21:23:12 
 Усреднение углов   Vladimir Vassilevsky   22 Apr 2003 02:43:10 
 Усреднение углов   vitalie vrabie   22 Apr 2003 03:09:10 
 Re: Усреднение углов   Val Krigan   22 Apr 2003 08:07:17 
 Усреднение углов   Andrey Tarasevich   22 Apr 2003 21:12:56 
 Re: Усреднение углов   Sergiy Kanilo   22 Apr 2003 21:40:13 
 Re: Усреднение углов   Val Krigan   22 Apr 2003 23:03:57 
 Re: Усреднение углов   Andrey Tarasevich   23 Apr 2003 21:05:59 
 Усреднение углов   Stanislav Shwartsman   23 Apr 2003 20:58:44 
 Re: Усреднение углов   Sergiy Kanilo   24 Apr 2003 00:36:16 
 Re: Усреднение углов   Andrey Tarasevich   24 Apr 2003 04:32:49 
 Усреднение углов   Ilya Osadchy   20 Apr 2003 16:51:56 
 Усреднение углов   vitalie vrabie   20 Apr 2003 20:16:06 
 Усреднение углов   Artur Mogozov   21 Apr 2003 07:52:38 
 Re: Усреднение углов   Valentin Davydov   21 Apr 2003 07:14:41 
 Re: Усреднение угл   Sergey Voloshchuk   21 Apr 2003 09:17:12 
 Re: Усреднение угл   Evgenij Masherov   21 Apr 2003 15:45:27 
 Re: Усреднение угл   Sergey Voloshchuk   21 Apr 2003 17:08:30 
 Усреднение угл   Igor Krassikov   21 Apr 2003 20:24:00 
 Re: Усреднение угл   Valentin Davydov   21 Apr 2003 18:18:41 
 Re: Усреднение угл   Andrew Ushakov   21 Apr 2003 21:37:21 
 Усреднение угл   Alex Semenyaka   21 Apr 2003 22:32:26 
 Усреднение угл   Alex Semenyaka   21 Apr 2003 22:34:48 
 Re: Усреднение угл   Sergey Voloshchuk   22 Apr 2003 11:33:00 
 Re: Усреднение угл   Val Krigan   22 Apr 2003 07:54:33 
 Усреднение углов   Evgenij Masherov   21 Apr 2003 09:58:37 
 Re: Усреднение углов   Val Krigan   21 Apr 2003 23:52:58 
 Re: Усреднение углов   Val Krigan   22 Apr 2003 08:05:14 
 Re: Усреднение углов   Protopopov Michael   22 Apr 2003 17:12:37 
 Re: Усреднение углов   Val Krigan   22 Apr 2003 18:17:30 
 Re: Усреднение углов   Protopopov Michael   22 Apr 2003 18:36:19 
 Re: Усреднение углов   Val Krigan   22 Apr 2003 19:45:04 
 Усреднение угл   Sergey Voloshchuk   23 Apr 2003 09:01:31 
 Re: Усреднение угл   Val Krigan   24 Apr 2003 03:59:05 
 Re: Усреднение угл   Sergey Voloshchuk   24 Apr 2003 09:42:37 
 Усреднение угл   Alex Cvetkov   25 Apr 2003 13:36:15 
 Re: Усреднение угл   Valentin Davydov   27 Apr 2003 12:05:25 
 Re: Усреднение угл   Valentin Davydov   24 Apr 2003 18:40:29 
 Re: Усреднение угл   Val Krigan   25 Apr 2003 01:27:27 
 Re: Усреднение угл   Sergey Voloshchuk   25 Apr 2003 09:02:00 
 Re: Усреднение угл   Protopopov Michael   25 Apr 2003 11:00:25 
 Усреднение угл   Alex Astafiev   24 Apr 2003 13:27:41 
 Усреднение углов   Alex Astafiev   21 Apr 2003 23:41:34 
 Усреднение углов   George Shuklin   30 Apr 2003 02:00:28 
 Re: Усреднение угл   Sergey Voloshchuk   30 Apr 2003 09:09:32 
 Re: Усреднение угл   Anatoly Kochubey   30 Apr 2003 15:07:05 
 Re^2: Усреднение угл   Andrew Starsh   01 May 2003 03:44:43 
 Усреднение угл   Alexander Drozdov   02 May 2003 19:44:40 
 Усреднение угл   Aleksey Skurihin   01 May 2003 04:47:13 
 Re: Усреднение углов   Borodin Anatoly   11 May 2003 17:56:48 
Архивное /ru.algorithms/23624bda91ed.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional