mam punkt A(*) i wokolo niego pelno innych punktow B(+) potrzbuje znalezc 4 najblizsze:
oczywiscie punkt A nie musi byc idealnie w sentrum punktow B jego otaczajacych.
jak je znalezc?
+ + + + + +
+ + + + + +
+ + + * + +
+ + + + + +
szukanie najblizszego punktu
-
- Użytkownik
- Posty: 5974
- Rejestracja: 28 lut 2010, o 19:45
- Płeć: Mężczyzna
- Lokalizacja: Toruń
- Podziękował: 15 razy
- Pomógł: 1251 razy
szukanie najblizszego punktu
Ja próbowałbym zrobić to tak - zapisać równanie prostej, która przechodzi przez ten punkt w zależności tylko i wyłącznie od kąta nachylenia. Następnie "przeleciałbym" tym kątem jako parametrem przez wszystkie możliwości dookoła, i jeśli prosta przetnie punkt, a w naszym "tempie" znajduje się punkt, który jest dalej, to wrzuciłbym go zamiast niego.
szukanie najblizszego punktu
ja bym zrobil inaczej ale do konca nie wiem jak to znaczy wszystkie punkty ktore sa naokolo jest ich tysioc kazdy jest w tej samej odleglosci od siebie....oprcz punktu wokol ktorego szukamy.bartek118 pisze:Ja próbowałbym zrobić to tak - zapisać równanie prostej, która przechodzi przez ten punkt w zależności tylko i wyłącznie od kąta nachylenia. Następnie "przeleciałbym" tym kątem jako parametrem przez wszystkie możliwości dookoła, i jeśli prosta przetnie punkt, a w naszym "tempie" znajduje się punkt, który jest dalej, to wrzuciłbym go zamiast niego.
czyli zrobic okrag o promieniu r i przeszukac na okolo tylko jak?
-
- Użytkownik
- Posty: 5974
- Rejestracja: 28 lut 2010, o 19:45
- Płeć: Mężczyzna
- Lokalizacja: Toruń
- Podziękował: 15 razy
- Pomógł: 1251 razy
szukanie najblizszego punktu
Jeśli masz powiedzmy środek \(\displaystyle{ (x_{0}, y_{0})}\) i promień \(\displaystyle{ r > 0}\). Po przebiegasz \(\displaystyle{ x}\) od \(\displaystyle{ x_{0}-r}\) do \(\displaystyle{ x_{0}+r}\) i dla każdego \(\displaystyle{ x}\) (poza punktami krańcowymi) na okręgu będziesz miał dwa punkty o współrzędnej \(\displaystyle{ y}\) równej \(\displaystyle{ \sqrt{r^2 - x^2}}\) i drugi \(\displaystyle{ -\sqrt{r^2 - x^2}}\).