Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 18.06.2009 Ostrzeżenie: (0%)
|
Witam
Zaczynam się uczyć tego języka i zastanawia mnie pewna sprawa: Poprzez formularz chciałbym aby wywołało mi tablicę podobną do szachów i na danym polu umieścić punkt lub cokolwiek innego. i zasada jego działania chciałbym aby była podobna do skoczka w szachach. By pokazało miejsca na które on może skoczyć. Jak to zrobić? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D |
Sposobów na to masz wiele... Zrobić tablicę 2-wymiarową i sparsujesz literę w formularzu na indeks, a liczbę z formularza zmniejszysz o 1 i w ten sposób uzyskasz współrzędne start. Sparsować całość z formularza na indeks 1-wymiarowej tablicy. Zrobić na starcie nie formularz ale obrazek gdzie klikasz pokazując to miejsce, a wybór między 1- a 2-wymiarowym zapisem startu masz dowolny. Jak widzisz to niektóre z propozycji na określenie pola startowego.
Co do ruchów możliwych to znów zależy od notacji szachownicy. Jeśli masz tylko 1 ruch pokazać, to 2-wymiarowa jest lepszym rozwiązaniem, bo prościej pokazać możliwe pola na ruch. Wystarczy wybrać wszystkie kombinacje indeksów tablicowych z zakresu: (+/-3, +/-1) oraz (+/-1, +/-3), gdzie wyniki muszą być w przedziale (0,7). Przykład: Na początek sprecyzujmy, że litery to kolumny od lewej do prawej, a wiersze to liczby od dołu do góry rosnące, czyli punkt (0, 0) to lewy dolny róg (taki jest zapis szachowy i tego się trzymam). Pole: B5 to start, co daje nam w macierzy pole o współrzędnych (1,4) Możliwości: +3,-1 -> (4, 3) +3,+1 -> (4, 5) -3,-1 -> (-2, 3) -3, +1 -> (-2, 5) +1,-3 -> (2, 1) +1,+3 -> (2, 7) -1,-3 -> (0, 1) -1,+3 -> (0, 7) Teraz eliminujemy wszystkie mające choć jedną współrzędną spoza zakresu <0,7> Wylatują więc propozycja 3 i 4, a pozostałe są w zakresie. Pozostaje Ci już tylko zwizualizować wynik. Sądzę, że najprościej poprzez zrobienie DIV z szachownicą jako background i wobec niego pozycjonować obrazki majace pokazywać obrazek skoczka oraz możliwych jego posunięć. Jak? Temu DIV nadaj position:relative a wewnątrz niego pozycjonuj img z obrazkami (IMG:style_emoticons/default/smile.gif) To chyba najprostsze rozwiązanie jakie można tu wymyślić (IMG:style_emoticons/default/winksmiley.jpg) EDIT: Bym zapomniał... Pozycjonowanie na stronie masz zawsze od lewego górnego rogu, a nie lewego dolnego jak w szachach, więc musisz wyniki nieco skonwertować, ale to już banał i powinieneś sobie poradzić. A poza tym mój pomysł to jedna z wielu możliwych wersji rozwiązania tego problemu, jak sam możesz przeczytać. Więc nie musisz go tak implementować jak napisałem, ale zrobić po swojemu. Ten post edytował thek 20.10.2009, 21:50:43 |
|
|
|
dutagamo formularz a "szachy" 19.10.2009, 13:21:43
ayeo Witam!
Tabela (szachownica) to tylko sposób ... 19.10.2009, 13:30:43
thek Wyślę, że wygodniejsza byłaby notacja liczbowa De... 19.10.2009, 14:37:57
ayeo Witam!
Nie zgłębiałem nigdy tematu (napisałem... 19.10.2009, 21:29:10
thek To może wyjaśnię dlaczego takie podejście zastosow... 19.10.2009, 23:50:25
dutagamo hehe to może ja się wetknę do tej dyskusji i skonk... 20.10.2009, 08:18:18
ayeo @dutagamo, to co chcesz zrobić jest opisane w moim... 21.10.2009, 00:17:19
thek @ayeo: tak. Są sytuacje, że algorytmy utykają, tak... 21.10.2009, 08:24:42
ayeo Witam!
Samo zagadnienie SSN (rozpoznawanie ko... 21.10.2009, 12:04:46 ![]() ![]() |
|
Aktualny czas: 5.04.2026 - 19:12 |