Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: trasa w ukł. współrzędnych
Forum PHP.pl > Inne > Hydepark
nilfheim
Mam układ współrzędnych powiedzmy 100x100

Chce aby pionek przeszedł z pola 1,1 na pole 11,15

Jak mogę obliczyć przez które pola przejdzie pionek(biorąc pod uwagę że idzie po przekątnej, a nie tak jak w tematach o znajdywaniu drogi, po kratkach)
babejsza
a2+b2=c2
nilfheim
wzór na odległość znam ale mi chodzi o to przez które pola przejdzie
nospor
Przenosze na Hydepark bo z php to ma sredni związek. Twoj problem polega na nieznajomosci algorytmu a nie kodowania
dr_bonzo
EDIT 3
Prosze tego posta nie brac pod uwage -- znow wszystko przemyslalem i zupelnie nie wiem jak rozwiazac ten problem i nie wiem czy te algorytmy sie do czegos przydadza...

: (
---------------------------------



EDIT:

To nie bedzie dobre rozwiazanie.


Troche linkow naprowadzajacych
http://en.wikipedia.org/wiki/Bresenham's_line_algorithm
http://www.gamedev.net/reference/articles/article767.asp

Ale nie jestem pewien czy dobrze rozwiaza ten problem.


EDIT 2: jak obrocisz uklad wspolrzednych to bedziesz mogl wyliczac dla linii polozonych pod katem (45, 90o), przy normalnym ukladzie (0,45)
Czyli po zastosowaniu tego alg. powinno sie udac.

Moge tylko zyczyc powodzenia smile.gif

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

Cala plansza to uklad wspolrzednych (X,Y).
Wyznacz roznienei prostej z tych dwoch punktow: Y(x) = Ax + B
(nie dziala dla prostej pionowej -- musisz obrocic uklad wspolrz)

pseudokod:
Kod
for ( $i = $start->x + 1; $i < $end->x; $i++ )
{
   $trasa_punkty[] = new Punkt( $i, (int)Y( $i ) );
}

foreach ( $trasa_punkty  as $punkt )
{
  print( $punkt-x . ", " . $punkt->y . "<br />" );
}
babejsza
Jest to jakieś rozwiązanie smile.gif Ale samo w sobie tworzy pewne problemy smile.gif Ogólnie jeżeli chodzi o problemy z matematyką to radzę zwrócić się do specjalistów w tym temacie czyli na www.matematyka.org.

W sumie raz prosiłem tam o rozwiązanie mojego problemu i odpowiedź przyszła bardzo szybko. W moim przypadku nie rozwiązała wszystkich problemów, ale mimo wszystko mogę mieć pewność, że mimo "wyparowania" nawet podstawowej wiedzy to ludzie pomogą smile.gif.

Jak już pisałem w moim przypadku nie pomogli (bezpośrednio), ale pośrednio rozwiązali mój problem.

Tak już OT to mogę udostępnić skrypt do tworzenia bardzo łądnego wykresu kołowego w oparciu o IM (nie GD, które nadaje się tylko do rydowania prostych ... grrr) i przekazaną do skryptu tablicę z danymi. Ale to już jak ktoś chce.
nilfheim
Dzięki za te linki, chyba pomoga
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.