algorytm.org

Pozycja punktu względem linii.



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Forum www.algorytm.org :: Geometria obliczeniowa i grafika komputerowa
Witaj Gość   
[Zarejestruj się]  
[Zaloguj się]
Zamieść odpowiedź
 Pozycja punktu względem linii.

Witam. Poszukuję algorytmu który określi pozycję podanego punktu, względem podanej linii. Czyli, że znamy współrzędne x i y punktu i współrzędne x i y początku i końca linii i chcemy wiedzieć, czy punkt znajduje się nad czy pod linią (zakładamy, że nie leży na niej). Czy jest gotowy algorytm dla takiego zadania, czy muszę pokombinować samodzielnie ? Z góry dziękuję za pomoc :)
Cytuj
photo
Bardzo prosta sprawa. Wystarczy wyznaczyć funkcję przechodzącą przez dwa punkty (początku i końca odcinka), a następnie podstawiając do uzyskanego wzoru współrzędną x punktu, sprawdzić czy wyliczona wartość jest większa, mniejsza lub równa współrzędnej y punktu. Na tej podstawie można określić gdzie leży punkt.
Oczywiście pasowałoby dodać warunek czy punkt znajduje się w obszarze odcinka tzn. nie "wychodzi" poza jego współrzędne, ale to już zależy od zastosowania.

Podaję wzór:
y = (Lky - Lpy) / (Lkx - Lpx) * Px + (Lkx * Lpy - Lky * Lpx) / (Lkx - Lpx)
y < Py Nad odcnikiem
y = Py Na odcniku
y > Py Pod odcnikiem

gdzie:
(Lpx, Lpy) - współrzędne początku odcinka
(Lkx, Lky) - współrzędne końca odcinka
(Px, Py) - współrzędne punktu
y - zmienna pomocnicza
Cytuj
photo
Ale czy ten wzór będzie prawidłowy gdy linia nie jest pozioma a np ukośna ?
Cytuj
Zamieść odpowiedź Strona # 
Szybka odpowiedź

Kod:    


Powered by ccBoard