Skocz do zawartości
azedor

Położenie Punktu Wzg Odcinka

Rekomendowane odpowiedzi

Witam,

 

mam napisać w C++ Builderze program którzy po podaniu współrzęnbych końców odcinka i dowolnego punktu, ma mia dać odpowiedź czy ten punkt leży z lewej czy z prawej strony odcinka.

 

Wiem, to zadanie wbrez pozorom nie jest takie proste jakby sie moglo wydawac, wiem ze mam wykorzystac jakiś algorytm w tym celu ale wlasnie nie pamietam jak sie autor tego algorytmu nazywa.

 

Moze ktos robil juz podobne zadanie, i wiem z jakiejgo algorymtu nalezy skorzystac, albo moze ktos widzial to zadanie juz rozwiazane ?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

ja to bym zrobil tak:

- masz dwa punkty wiec mozesz obliczyc rownanie liniowe prostej, wyjedzie jakies tam y=ax+b

- obliczasz tangens(a) i wiesz juz pod jakim katem pochylona jest porsta

- jesli sprawdzamy pkt C(x1,y1) to podstaw do rown. prostej x1 i oblicz wsp. pkt nalezacego do prostej. Teraz wystarczy porownac wsp. pkt C z naszym obliczonym pkt. nalezacym do prostej - nazwijmy go M(x2,y2) - robiac to w ten sposob:

jesli kat mniejszy od 90 stopni i jesli i y1<y2 to lezy po lewej w przeciwnym wyadku po prawej

jesli kat wiekszy niz 90 to na dowrot

tak bym to rozkminial, sorry ale na biezaco to wymyslalem wiec moze byc blad...

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

...z lewej :lol:.. stojąc w środku układu współrzędnych :D

 

kobe2005 nieprawdę rzeczesz... Aczkolwiek gdyby wykorzystać równanie prostej to wystarczyło by jeno podstawic X punktu do równania prostej i otrzymał byś Y tej prostej w punckie X, ktróy wystarczyło by tylko porównać z Y punktu żeby ocenić czy punk leży pod czy nad funkcją...

 

jednak odcinek w przestrzeni 2D nie koniecznie musi być funkcją (x).. Co jeśli odcinek będzie pionowy... wtedy takie cos nie jest funkcją (x).

 

Można by to obejść w ten sposób, że jeśli współrzedne odcinak mają jednakowe X to wtedy obliczamy funkcję x=ay+b (a nie y=ax+B).. i odpowiednio inaczej interpretujemy wynik...

 

ale faktycznie jakoś nieściśle okreslony cel zadania.. lewa i prawa strona odcinka.. heh :wink:

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

ja rozumiem ze zadanie jest dziwne ja tylko naszkicowalem pewna metode...

wystarczy przed tym co napisalem sprawdzic czy prosta pionowa wtedy porównujemy x, natomiast gdy prosta (odcinek) pozioma to nie mam pojęcia jak ustanowić czy po lewej czy po prawej. (chodzi oto e nie bardzo wiem jak mam rozumiec prawa lewa strone co, jesli A(1,1) B(5,1) a pkt c (3,2) )???

Dodac wystarczy jeszcze sprawdzenie czy pkt nie nalezy do prostej zawierajacej odcinek, jesli nalezy to nie mozna mowic o prawej lewej stronie. Fakt troche to niekonkretne

Edytowane przez kobe2005

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...