Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne]mapa generowana js czy w całości?
Forum PHP.pl > Forum > Przedszkole
kubek15
Witam.

Co byście mi poradzili. Zrobić mapkę która generuje poszczególne części mapy np. całą mape pociąć na pliki 50x50 i je generowac jeżeli mapa sie przesunie. Czy zrobić jeden plik z mapą cały który się odpowiednio o kilka px przesuwa?

Jeżeli bym zrobił w całości to idze jakoś zrobic aby np. można było przesówac do odpowiedniego momentu.
Sterowanie strzałkami.

Prosze o jakiej sugestie.
Szukałem na tym forum i na innych i nie znalazłem jakiejś konkretnej odpowiedzi.
ShadowD
Nawet tutaj koledzy prezentowali swoje pomysły jak poszukasz znajdziesz a jak nie to masz mały pomysł ode mnie.

Masz div#taca który jest tak jak by tacą na kawałki mapy. Powiedzmy, że 100/100, masz drugiego div#mapa który jest jak by ramką mapy w nim mamy #taca którą przesuwasz marginesami dodatnimi i ujemnymi. #taca ma mieć pozycje apsolutną a #mapa relatywną. Użytkownik włączając mapę widzi np. cztery pierwsze kawałki i je wczytujesz, plus te które są na około (by nie było efektu doczytywania). Gdy ktoś się ruszy przesuwasz mapę w odwrotnym kierunku o np. 10px i doczytujesz kawałki mapy leżące obok.

Mapa mimo że ma 100/100 części, nie oznacza to że jedna jednostka ruchu przesuwa mapę o jeden prostokąt choć wykonanie mapki w ten sposób ograniczy potrzebę doczytywania części, bo wiele z nich będzie już istniało gdzieś w widocznym miejscu.

Nie wiem czy jasno to opisałem, mam nadzieję, że dasz radę to rozszyfrować. ;]
thek
Lepiej to zrobić w kawałkach. Sprawa jest związana z choćby transferem.
1) Gdy jest to jeden plik, to musi on być ściągnięty w całości by go obejrzeć. Nieraz to grube megabajty, czy nawet dziesiątki w przypadku wielkich rozdzielczości. User nie będzie tyle czekal i uzna, że strona się zawiesiła.
2) Pocięta mapa pozwala ściągnąć tylko te kawałki, które są potrzebne. Reszta będzie dociągać w razie potrzeby.
3) Korzystając z google maps masz gotowe skrypty, nie musisz więc pisać od zera. Wystarczy, że nieco nauczysz się tej technologii.

Co do drugiego pytania, to pewnie by trzeba było kombinować z z-index i pozycjonowaniem sterowanym poprzez JS i tak. Chcąc nie chcąc znajomość JS byłaby konieczna.
kubek15
Ja juz mam wykonaną mape właśnie w kawałkach, ale jak sobie pomysle że tak całą mape będę musiał pociąć to chyba mi z tydzień zejdzie smile.gif .

Bo teraz mam to zrobione tak że js odczytuje jaka strzałka i odpowiednio zmienia obrazki.
A jak myślicie zostawic to w js czy może dać ajax przesyłanie w tle? Bo w ajax'ie mało miałem styczności.

Dzięki wielkie za wasze odpowiedzi.
thek
Ech... Po co kroić ręcznie? Nie po to php ma GD2 by z niej nie skorzystać winksmiley.jpg Ja tak zrobiłem swoją, a dodam, że to nie był jeden obrazek, ale około 3000 małych, na dodatek ułożonych w coś na kształt plastra miodu, czy raczej rombu (przesunięcie sąsiedniej kolumny o pół wysokości) Musiałem więc obliczać na bieżąco współrzędne wynikowe i na ich podstawie wyszukiwać które obrazki składają się na to aktualnie by wyciąć z nich odpowiednie fragmenty i skleić go do kupy winksmiley.jpg Skrypt chodził na localu kilkanaście minut, ale zrobił to co chciałem smile.gif Napisanie algorytmu -> pół godziny (musiałem analizować nazewnictwo plików), napisanie skryptu robiącego kawałki na wszystkie poziomy zooma -> 2-3 godzinki, działanie skryptu -> 15-20 minut. Gdzie tu jest tydzień pracy? winksmiley.jpg Ja zamknąłem się w kilku godzinach smile.gif
kubek15
No tak GD2 Zapomniałem smile.gif A ja moja mapkę co ma 20x20 kratek ręcznie ciąłem . Z z tym tygodniem to chodziło mi o to bo moja mapa miał by około 3-5 tyś. kawałków i jak sobie pomyślałem że musiał bym to ciąć to .......

Ale GD2 Dzięki.
thek
Tak dodatkowo... Napisałem że musiałem analizować nazewnictwo plików, bo miałem gorzej niż Ty. To nie był jeden wielki plik, ale kilka tysięcy małych, gdzie nazewnictwo było ściśle określone. Na jego podstawie zauważyłem, że układają się one w kształt rombu i dopiero napisać funkcję transformującą ów romb na kwadrat, co wiązało się z obliczaniem które stare obrazki znajdą się w nowym kwadracie, wyciąć ich fragment i wkleić do nowego. Gdyby nie to, że z matmą jestem za pan brat to ślęczałbym nad tym problemem pewnie kilka dni przynajmniej, zanim zauważyłbym choćby fakt, że owe obrazki układają się w określony wzór, który odzwierciedla się w nazewnictwie plików. Gdy to odkryłem cała mapa tak mi się pięknie ułożyła, że zauważyłem nawet błędy grafików nad nią pracujących biggrin.gif
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.