Topic: žemėlapio kūrimas

Sveiki!
įrašau žemėlapį štai taip:

for($y = -200; $y <= 200; $y ++) {

    for ($x = -200; $x <= 200; $x ++) {
    
        mysql_query("INSERT INTO zemelapis SET x='$x',y='$y'");
            
    }
    
}

ir poto jį norėdamas atvaizduot nuskaitau šitaip:

$x = 0;
$y = 0;
$spindulys = 2;
$que = mysql_query("SELECT * FROM zemelapis WHERE x >= $x-$spindulys AND x <= $x+$spindulys AND y >= $y-$spindulys AND y <= $y+$spindulys ORDER BY id ASC");

Tai man atvirksčiai atvaizduoja arba pagal y(jeigu rikiuoju su ASC) arba pagal x(jeigu rikiuoju pagal DESC).


Va taip maždaug atvaizduoja su ASC koordinates:

[-2;-2][-1;-2][0;-2][1;-2][2;-2]
[-2;-1][-1;-1][0;-1][1;-1][2;-1]
[-2;0][-1;0][0;0][1;0][2;0]
[-2;1][-1;1][0;1][1;1][2;1]
[-2;2][-1;2][0;2][1;2][2;2]

O noriu, kad atvaizduotų taip:

[-2;2][-1;2][0;2][1;2][2;2]
[-2;1][-1;1][0;1][1;1][2;1]
[-2;0][-1;0][0;0][1;0][2;0]
[-2;-1][-1;-1][0;-1][1;-1][2;-1]
[-2;-2][-1;-2][0;-2][1;-2][2;-2]

Re: žemėlapio kūrimas

Tai pas tave yra nurodytas rikiavimas pagal id - tu rikiuok pagal x ir pagal y didėjimo tvarka.

3 (edited by Donatas 2011-03-08 00:40:27)

Re: žemėlapio kūrimas

cia man rodos pats susimaisiai tarp ASC ir DESC

daleiskim tavo salyga

x >= $x-$spindulys AND x <= $x+$spindulys AND

jei atvaizduojam pagal ASC rikiuodami pagal id

gauname reiksmes
-2,-1,0 ir 0,1,2

tai yra keli sprendimo budai gauti atvirkscia varianta

arba pradet reiksmes atvaizduot per cikla atvirksciai nuo didziausios iki maziausios $x = 6; $x >= 0; $x-1
arba keisti ID isrikevima nuo ASC i DESC

arba kaip minde sake rusiuok pagal x ir y

nes jei keisi salyga
x <=$x+$spindulys AND x >= $x-$spindulys
gausi isdestyma nuo 0 vel nesigauna
0,1,2 ir 0,-1,-2

Re: žemėlapio kūrimas

Dėkui labai už pagalbą. ;)

Re: žemėlapio kūrimas

Gal galit padėti atvaizduoti žemėlapį? nelabai suprantu kaip tai reikėtų padaryti :/

Re: žemėlapio kūrimas

pabandyk pasipiesti ant lapo, kad suprastum veikimo logika

Re: žemėlapio kūrimas

Logika supratau, bet vat kaip atvaizduoti viską neįkertu :/

Re: žemėlapio kūrimas

Tai tu prasyk kaip bandai tai padaryti? Kaip jau bandei tai padaryti? Kas nesigavo?  :)

Re: žemėlapio kūrimas

Na bandau atvaizduoti duombazėje įrašytus koordinačių plokštumos duomenis nuskaitau juos, bet nesuprantu kaip juos atvaizduoti, kad rodytu puslapyje žemėlapį. Kažkaip nesuvokiama man. Neviltyje esu, jau 3 dienos kaip niekur nerandu kažko panašaus, kabliuko užsikabinti.

Re: žemėlapio kūrimas

Turbut badai zemelapi atvaizduoti izometrineje erdveje. Siaip zemelapis yra paprasciausia lentele. Velgi, siulau pabandyti pasipiesti ant lapo. Siaip pradziai gali imti ne daug ploto. Pvz. 3x3, taigi sakykim tavo miestas yra centrinis laukelis, taigi tau reikia is db paimti irasus kurie yra nuo (x-1, y-1) iki (x+1, y+1). O atvaizdavimo algoritmas (algoritmas kuris sudelioja lentele) is esmes yra sudarytas is 2 ciklu (vienas perkialai eilute, kitas sustato stulpelius).
pvz.

<?php
$zemelapis = array(
    array('#', '#', '@'),
    array('@', '#', '#'),
    array('#', '@', '#')
);
foreach($zemelapis as $eilute)
{
    foreach($eilute as $stulpelis)
    {
        echo $stulpelis;
    }
    echo '<br/>';
}
?>

P.S. kaip ir rasiau anksciau, svarbiausia suprasti veikimo logika. (-;

Re: žemėlapio kūrimas

Dėkuj kad užvedei ant kelio ;)

Re: žemėlapio kūrimas

Kaip man atvaizduoti tai neįkertu. ir kaip man reikės jį su navigacija judint :/

Re: žemėlapio kūrimas

Ka jus cia darot.. kas per 'zemelapiai'?
Gali papasakot ka su tuo zemelapiu veiksi, kas ten turi buti vaizduojama? Is kur imami duomenys? is galvos? Zemelapis turi buti kaip nuotrauka ar kaip kas?

Re: žemėlapio kūrimas

žemėlapis žaidimui ^^ busvaizduojamos kaimų koordinatės koordinačių sistemos principu. domenys imami iš mysql lentelės map -> x ir y žemėlapis turi būti kaip judinama rodyklėmis lentelė. kad gautūsi šitaip http://up.yop.lt/koor_map/map.php

Re: žemėlapio kūrimas

Tai tada neisradinejant dviraciu imk google maps
http://code.google.com/apis/maps/index.html
Kruvos pvz:
http://code.google.com/apis/maps/docume … index.html

16 (edited by qutwala 2011-07-05 19:03:43)

Re: žemėlapio kūrimas

insane wrote:

Tai tada neisradinejant dviraciu imk google maps
http://code.google.com/apis/maps/index.html
Kruvos pvz:
http://code.google.com/apis/maps/docume … index.html

Tu ką, rimtai?
Jo, aš jau įsivaizduoju google žemėlapį kokiame travian'e.. :D :D

Re: žemėlapio kūrimas

to tadulis: as tau manau daviau gana aisku ir paprasta esmini pvz. bet esmine problema ta, kad tu dar net nesupranti veikimo logikos. Kol nesuprasi kaip is esmes viskas turetu veikti, tok tu ir negalesi to aprasyti programiskai. Kitas dalykas dar tas, kad tu bandai dirbti su mysql, bet ir ten tavo zynios labai silpnos. Per anksti pradejai kurti zaidima, jis dar ne tavo jegoms (juo labiau, kad tavo dabartines "problemos" palyginus yra niekas pries tas kurios dar taves laukia). Patarciau pasiskaityti apie dabra su masyvais (o ir siaip php zynios nestebuklingos) bei mysql.

P.S. tavo duota koda galima aprasyti mazdaug 2-3 kartus trumpiau ir jis viska padarys ka reikia.

18 (edited by insane 2011-07-05 19:56:18)

Re: žemėlapio kūrimas

qutwala wrote:
insane wrote:

Tai tada neisradinejant dviraciu imk google maps
http://code.google.com/apis/maps/index.html
Kruvos pvz:
http://code.google.com/apis/maps/docume … index.html

Tu ką, rimtai?
Jo, aš jau įsivaizduoju google žemėlapį kokiame travian'e.. :D :D

Ar mes kalbam dabar apie travianus?
Jam reik paprasto 2D mapso, o su google maps tai galima nesunkiai padaryt. uzmest koki nori sluoksni, sudeliok markerius ir viskas. Nereiks terliotis su visokiais controlsais, reiks tik paduot tam mapui duomenis.
Niekas neliepia usa zemelapio rodyt.
Vienu zodziu kada nors suprasi

19 (edited by qutwala 2011-07-05 20:22:43)

Re: žemėlapio kūrimas

insane wrote:
qutwala wrote:
insane wrote:

Tai tada neisradinejant dviraciu imk google maps
http://code.google.com/apis/maps/index.html
Kruvos pvz:
http://code.google.com/apis/maps/docume … index.html

Tu ką, rimtai?
Jo, aš jau įsivaizduoju google žemėlapį kokiame travian'e.. :D :D

Ar mes kalbam dabar apie travianus?
Jam reik paprasto 2D mapso, o su google maps tai galima nesunkiai padaryt. uzmest koki nori sluoksni, sudeliok markerius ir viskas. Nereiks terliotis su visokiais controlsais, reiks tik paduot tam mapui duomenis.
Niekas neliepia usa zemelapio rodyt.
Vienu zodziu kada nors suprasi

O travian'e, - 3D map'as?
Jeigu tamsta neatkreipei dėmesio jis su masyvais nemoka net normaliai žaisti, o tai ką jam dabar siūlai? JS?
Be to koks skirtumas ar jam reikės tik paduoti, paiimti ar dar kokį biesą vis vien reikės pirmiausiai apdoroti tuos duomenis su PHP.
žodžiu, žmogus neišgalvoja kas blogai su paimamais duomenimis, o jis siūlo jam vos ne Zend framework'ą imt.
Vienu žodžiu kada nors suprasi.
Peace.
P.S. Iš forumo statistikos pastebėjau, kad tik replikomis ir temoki svaidytis kas sudaro ne kokį įvaizdį. O tu imk kartą jeigu sugebi pats ir padėk.
P.P.S. Nieko asmeniško, tiesiog kai naglai imama aiškinti ir ironizuoti iš kažkur išbridęs.. :)
P.P.P.S. į tolimesnius ginčus tikrai neketinu veltis, čia ne vaikų darželis.

Re: žemėlapio kūrimas

Na as pasiuliau google maps kaip viena ir mano manymu neblogu sprendimu
O tu is karto:
"Jo, aš jau įsivaizduoju google žemėlapį kokiame travian'e.. :D :D"
Tai ar cia ne vaiku darzelis?
Jei siendien zmogus kazko nemoka tai po menesio gal mokes ir isbandys pats ka pasiuliau. Svarbu zinos kad yra alternatyvu.