Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Figura wypukła
Arthast
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.01.2005

Ostrzeżenie: (0%)
-----


Witam koledzy,

mam dosyć ciekawe zagadnienie do rozwiązania. Mianowicie -> chcę napisać funkcję która po podaniu 4 współrzędnych (w sumie 8 bo każda współrzędna posiada wysokość i szerokość (x i y) ). Zna może ktoś inną możliwość niż wykluczanie każdej możliwości po kolei? zdaje się to trochę bezsensu i dosyć zawodne. Ułatwieniem jest fakt że figura zawsze będzie czworokątem.

Jakieś pomysły?

Pozdrawiam

Ten post edytował Arthast 30.12.2007, 20:37:34
Go to the top of the page
+Quote Post
lord_t
post
Post #2





Grupa: Zarejestrowani
Postów: 603
Pomógł: 131
Dołączył: 24.07.2007
Skąd: Górny Śląsk

Ostrzeżenie: (0%)
-----


Cytat(Arthast @ 30.12.2007, 04:02:51 ) *
...chcę napisać funkcję która po podaniu 4 współrzędnych (... ).


Co ma zrobić ta funkcja po podaniu tych współrzędnych?


PS. Literówka w temacie.

Ten post edytował lord_t 30.12.2007, 10:09:03


--------------------
Go to the top of the page
+Quote Post
ayeo
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 202
Pomógł: 117
Dołączył: 13.04.2007
Skąd: 127.0.0.1

Ostrzeżenie: (0%)
-----


Algorytmów na tego typu jest milion...


--------------------
Go to the top of the page
+Quote Post
Arthast
post
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.01.2005

Ostrzeżenie: (0%)
-----


Cytat(lord_t @ 30.12.2007, 10:08:37 ) *
Co ma zrobić ta funkcja po podaniu tych współrzędnych?


sprawdzać czy figura jest wypukła czy nie jest ;] te cztery współrzędne to rogi bryły ;]

miliony? może nakierujesz mnie na poprawne myślenie? byłbym wdzięczny.
Go to the top of the page
+Quote Post
doseo
post
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 3
Dołączył: 23.01.2007
Skąd: Dys/Lublin

Ostrzeżenie: (0%)
-----


Na ile się orientuje to każdy czworokąt jest wypukły.
Go to the top of the page
+Quote Post
Arthast
post
Post #6





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 28.01.2005

Ostrzeżenie: (0%)
-----


hym, zamieszcze rysunek pomocniczy - wybaczcie za jakość, ale skanera się jeszcze nie dorobiłem ;]



można sobie ułatwić sprawę, przeciągając linie pomocniczą; Jeżeli oba pozostałe punkty znajdą się po jednej stronie tej linii to wtedy figura jest wklęsła, jeżeli znajdą się na obu różnych połowach lub ewentualnie na tej linii są to figury wypukłe.
Go to the top of the page
+Quote Post
nevt
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


doseo - lepiej nie bierz udziału w biegach na orientację - możesz zaginąć na zawsze winksmiley.jpg

Arthast - zakładając, że twój czworokąt ma wierzchołki A, B, C i D musisz sprawdzić czy odcinek AC przecina się (ma punkt wspólny) z BD - jeżeli tak - to jest czworokąt wypukły - jeżeli nie - jest wklęsły...

twoja metoda nie zadziała jeśli poprowadzisz tą linię pomocniczą przez niewłaściwe punkty (w twoim przykładzie to B i D) - więc musisz robić min. 2 sprawdzenia...

a przy okazji - googlowanie nie boli - to powyżej wyskoczyło mi jako 3 odpowiedź na pytanie "sprawdzić czy czworokąt jest wypukły"... więc wzoru na punkt wspólny dwóch odcinków poszukaj już sobie sam...

Ten post edytował nevt 30.12.2007, 22:14:52


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 08:10