Odległość punktu od odcinka

Obiekty i przekształcenia geometryczne, opisane za pomocą układu (nie zawsze prostokątnego) współrzędnych.
Awatar użytkownika
Borneq
Użytkownik
Użytkownik
Posty: 247
Rejestracja: 23 lip 2010, o 07:50
Płeć: Mężczyzna
Lokalizacja: geo:lat=0 geo:lon=0
Podziękował: 13 razy

Odległość punktu od odcinka

Post autor: Borneq »

Odległość punktu od prostej jest np. tu:

\(\displaystyle{ d(P,k) = \frac {|A\,x_p+B\,y_p+C|}{\sqrt{A^2+B^2}}}\)
Interesuje mnie dodatkowy warunek, czy punkt leży w "pasmie" powstałym przez przechodzące linie przez końce odcinka prostopadłe do tego odcinka.

-- 21 maja 2013, o 20:09 --

Chociaż do tego nie jest konieczne obliczenie odległości od odcinka, wystarczy obliczyć odległość od prostej przechodzącej przez odcinek.
Jeżeli prostą przedstawimy w postaci, (gdzie unikamy nieskończoności dla pionowej): \(\displaystyle{ Ax+By+C=0}\)
to, wtedy przez odcinek \(\displaystyle{ (x_0,y_0)(x_1,y_1)}\) przechodzi prosta:
\(\displaystyle{ A = y_0-y_1\\
B = x_1-x_0\\
C = x_0(y_1-y_0)-y_0(x_1-x_0)}\)

Należy to obliczyć oraz najpierw sprawdzić, czy współczynnik u mieści się w zakresie \(\displaystyle{ \left\langle 0,1 \right\rangle}\)
\(\displaystyle{ u = \frac{(x_p-x_0) \cdot (x_1-x_0)+(y_p-y_0) \cdot (y_1-y_0)}{sqrNorm}}\)
gdzie \(\displaystyle{ sqrNorm}\) jest kwadratem normy odcinka: \(\displaystyle{ (x_1-x_0)^2+(y_1-y_0)^2}\)
który wystarczy tylko raz obliczyć dla odcinka dla różnych punktów

Teraz jak mając współczynnik \(\displaystyle{ u}\) i odległość \(\displaystyle{ v}\) obliczyć \(\displaystyle{ (x,y)}\) punktu w bazie nowego odcinka?
Potrzebne jest do do algorytmu morfingu Beier-Neely.
Ostatnio zmieniony 21 maja 2013, o 21:57 przez Jan Kraszewski, łącznie zmieniany 1 raz.
Powód: Nieczytelny zapis - brak LaTeX-a. Proszę zapoznaj się z instrukcją: http://matematyka.pl/latex.htm .
Awatar użytkownika
radwaw
Użytkownik
Użytkownik
Posty: 72
Rejestracja: 6 mar 2013, o 19:13
Płeć: Mężczyzna
Lokalizacja: Warszawa
Pomógł: 7 razy

Odległość punktu od odcinka

Post autor: radwaw »

równanie prostej prostopadłej i nierówność, koniec?
Awatar użytkownika
Borneq
Użytkownik
Użytkownik
Posty: 247
Rejestracja: 23 lip 2010, o 07:50
Płeć: Mężczyzna
Lokalizacja: geo:lat=0 geo:lon=0
Podziękował: 13 razy

Odległość punktu od odcinka

Post autor: Borneq »

To nie jest takie proste, problem ze znakiem.
Obliczamy najpierw \(\displaystyle{ \left( x_t,y_t \right)}\) leżące na odcinku lub linii:
\(\displaystyle{ x_t:=u \cdot \left( x_1-x_0 \right) +x_0;\\
y_t:=u \cdot \left( y_1-y_0 \right) +y_0;}\)

Jest to punkt z którego teraz będzie musiała odejść prostopadła długości \(\displaystyle{ v}\)
\(\displaystyle{ dx^2+dy^2 = v^2}\)
i drugie równanie: to musi być prostopadła do linii o znanych \(\displaystyle{ A}\) i \(\displaystyle{ B}\)
\(\displaystyle{ \frac{dx}{dy} = \frac{A}{B}}\)
dwie zmienne, dwa równania, dochodzimy do
\(\displaystyle{ dy^2 \left( 1+ \frac{A^2}{B^2} \right) = v^2}\)
można obliczyć \(\displaystyle{ dy}\) i stąd \(\displaystyle{ dx}\), ale nie wiadomo jaki mam znak, mimo że zmodyfikowałem obliczanie \(\displaystyle{ v}\), tak że jest bez wartości bezwzględnej i może przyjmować wartości ujemne. Nawet jak \(\displaystyle{ v}\) będzie ujemne to i tak mamy \(\displaystyle{ v}\) do kwadratu i \(\displaystyle{ dy}\) do kwadratu
Pytanie - jak rozstrzygnąć, czy punkt jest po lewej czy prawej stronie odcinka (czy też linii przechodzącej przez odcinek) zakładając że ustawiamy się tak, że początek odcinka \(\displaystyle{ x_0,y_0}\) jest na dole a koniec \(\displaystyle{ x_1,y_1}\) u góry.
Ostatnio zmieniony 21 maja 2013, o 21:59 przez Jan Kraszewski, łącznie zmieniany 2 razy.
Powód: Nieczytelny zapis - częściowy brak LaTeX-a. Proszę zapoznaj się z instrukcją: http://matematyka.pl/latex.htm .
Awatar użytkownika
yorgin
Użytkownik
Użytkownik
Posty: 12762
Rejestracja: 14 paź 2006, o 12:09
Płeć: Mężczyzna
Lokalizacja: Kraków
Podziękował: 17 razy
Pomógł: 3440 razy

Odległość punktu od odcinka

Post autor: yorgin »

Czy ja mogę prosić o napisanie tego wszystkiego po polsku? Bo póki co zdania typu
Interesuje mnie dodatkowy warunek, czy punkt leży w "pasmie" powstałym przez przechodzące linie przez końce odcinka prostopadłe do tego odcinka.

-- 21 maja 2013, o 20:09 --

Chociaż do tego nie jest konieczne obliczenie odległości od odcinka, wystarczy obliczyć odległość od prostej przechodzącej przez odcinek.
są dla mnie niezrozumiałym bełkotem.

Podobnie w ogóle nie rozumiem, o co chodzi ze znakiem.

A jedyne co zrozumiałem, to chyba próba znalezienia punktu będącego rzutem prostopadłym na prostą innego punktu leżącego na innej prostej równoległej do pierwszej prostej.
ODPOWIEDZ