algorytm.org

Szukaj



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?

Przynależność punktu do odcinka
Ocena użytkowników:***** / 23
SłabyŚwietny 
Wpisany przez Michał Knasiecki, 03 sierpnia 2005 22:47

Niech dane będą trzy punkty określone współrzędnymi: A=(x1,y1), B=(x2,y2), C=(x3,y3).
Chcemy sprawdzić, czy punkt C należy do odcinka |AB|. Najpierw należy sprawdzić, czy wszystkie trzy punktu są współliniowe. Jeżeli są, to przechodzimy do następnego kroku. Łatwo zauważyć, że jeżeli punkt C należy do odcinka |AB| to rzuty prostokątne tego punktu na osie OX i OY wpadają do rzutów prostokątnych odcinka |AB| na te osie:

Image

Drugim warunkiem jest więc: min(x1, x2) <= x3 <= max(x1, x2) oraz min(y1, y2)<= y3 <= max(y1, y2)

Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Tomasz LubińskiAda
.ada
.ada
***** / 2
Michał KnasieckiC/C++
.cpp
.cpp
***** / 7
Michał KnasieckiDelphi/PascalBorland Delphi 5
.pas
.pas
***** / 2
Tomasz LubińskiJava
.java
.java
***** / 1
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 28 sierpnia 2012 19:59
Komentarze
photo
+3 # martucha 2013-04-04 11:06
Jeśli wiemy, że punkt C leży na tej samej prostej co punkty A i B, to chyba wystarczy sprawdzić tylko jeden element drugiego warunku- czyli min(x1, x2)
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+2 # Marcin Sz. 2013-04-07 14:06
Martucha, a co jeśli odcinek jest pionowy ? :)
Odpowiedz | Odpowiedz z cytatem | Cytować
photo
+1 # tora 2015-09-15 11:46
ale, wtedy również to chyba zajdzie bo x1 bedzie równy x2 więc wystarczy że x3 = x2= x1 czyli dalej wystarczy sprawdzic jeden warunek?
Odpowiedz | Odpowiedz z cytatem | Cytować
Dodaj komentarz