Armenian Knowledge Base  

Go Back   Armenian Knowledge Base > Technical sections > Languages, Compilers, Interpreters > Algorithms
Register

Reply
 
LinkBack Thread Tools
Old 31.05.2004, 14:14   #1
Дошкольник
 
BlackMoon's Avatar
 
Join Date: 05 2002
Location: The Dark Side of The Moon
Posts: 102
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Question окружность

дана матрица
две точки
p1(х1,у1), p2(х2,у2).
p1 является центром окружности
нужно найти p3, где p3 является следующей точкой
по часавой или против не важно.
смещение можно взять за угол <=10 градусов.
Reply With Quote
Old 31.05.2004, 17:02   #2
Академик
 
greka's Avatar
 
Join Date: 09 2001
Location: inside myself
Posts: 5,369
Downloads: 0
Uploads: 0
Reputation: 18 | 5
Default

1. выбираем из матрицы те точки, расстояние которых к p1 равно (либо ~ равно, с каким-нить threshold-ом) distance(p1, p(i)) ~= distance(p1, p2)

(кстати, этот threshold и определяет "градусность" <=10 )

2. поиск ближайшей точки к точке p2 среди множества отобранных точек.

----------------------------

resume: Тебе нужна 1 функция расчета расстояния между двумя точками , и больше ничего.

Reply With Quote
Old 01.06.2004, 05:36   #3
Дошкольник
 
BlackMoon's Avatar
 
Join Date: 05 2002
Location: The Dark Side of The Moon
Posts: 102
Downloads: 0
Uploads: 0
Reputation: 0 | 0
Default

этот вариант у мениа тоже был
просто стало интересно
возможн ли более оптимальное решение?
Reply With Quote
Old 01.06.2004, 08:14   #4
Академик
 
greka's Avatar
 
Join Date: 09 2001
Location: inside myself
Posts: 5,369
Downloads: 0
Uploads: 0
Reputation: 18 | 5
Default

т.к. матрица не сортирована, более оптимального не может быть.
Reply With Quote
Old 01.06.2004, 20:47   #5
Академик
 
greka's Avatar
 
Join Date: 09 2001
Location: inside myself
Posts: 5,369
Downloads: 0
Uploads: 0
Reputation: 18 | 5
Default

функция расчета расстояния: можно не расчитывать квадратный корень, а брать модуль, побыстрее будет.
Reply With Quote
Sponsored Links
Reply

Thread Tools


На правах рекламы:
реклама

All times are GMT. The time now is 16:57.


Powered by vBulletin® Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.