Szerző Téma: Melyik kerék van a legközelebb xyz ponthoz  (Megtekintve 1204 alkalommal)

Melyik kerék van a legközelebb xyz ponthoz
« Dátum: 2014. július 29. - 18:31:28 »
0 Show voters
Sziasztok! Azt szeretném lekérni valahogy, hogy melyik (jármû)kerék (pontosabban a jármû melyik kereke) van a legközelebb egy bizonyos ponthoz. Elõre is köszönöm!
« Utoljára szerkesztve: 2014. július 29. - 18:37:08 írta Flash »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #1 Dátum: 2014. július 29. - 18:45:30 »
0 Show voters
A GetVehicleModelInfo függvény segítségével lekérdezed az adott jármû hosszát és szélességét, illetve a GetVehiclePos függvény segítségével az adott jármû pozícióját, majd egy kis matematikával meghatározod a kerekek helyzetét. Ezek után már egyszerû dolgod van; csak meg kell nézned, hogy melyik kapott pozíció van a legközelebb a kérdéses ponttól.

Melyik kerék van a legközelebb xyz ponthoz
« Válasz #2 Dátum: 2014. július 29. - 19:04:30 »
0 Show voters
Na ezaz, hogy a matek részére nem jövök rá :(

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #3 Dátum: 2014. július 29. - 19:43:16 »
+1 Show voters
Matek és logika nélkül mégis hogyan szeretnél te programozni? :confused:


Az még kimaradt, hogy az adott jármû rotációját is figyelembe kell venni. Na, így már nem is olyan egyszerû a képlet. Egy biztos: ezen fárasztó nap után nem fogok most nagy matekozásba kezdeni, bocsi. :confused:


Hehe, ZyZukám már adja is a -t, mert ki mertem mondani, matek és logika nélkül nem igazán fog neki menni ez az egész dolog. Meg kell küzdeni a megvalósításáért, fejben.
« Utoljára szerkesztve: 2014. július 29. - 19:49:41 írta Dfoglalo »

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #4 Dátum: 2014. július 29. - 19:48:12 »
0 Show voters
A GetVehicleModelInfo-val lekérheted az elsõ és a hátsó két kerék közötti pontokat is.
A kocsi szélességének a felét kivonod a két kerék közti pozícióból, és megkapod a kerék pozícióját nagyjából.
A legközelebbihez pedig kell egy legközelebbi változó (kerék tárolására, annak a kocsinak a kereke, amelyik a legközelebb van, 1, 2, 3, vagy 4), egy távolság és egy ideiglenes változó. A legközelebbi alapból a legelsõ. Végigfutsz minden koordinátán, minden iterációnál lekéred az ideiglenes változóba az éppen adott ponttól vett távolságot, és ha ez nagyobb, mint az eddig talált legnagyobb, az eddig talált legnagyobb legyen (legnagyobb) egyenlõ a most vizsgálttól vett távolságoddal (ideiglenes változó), a legközelebbi kerék (vagy tömbben található pozíció) ID-jét pedig tárold egy másik változóban. Így megy a legközelebbi játékos, kocsi, 3dtextlabel, object, pickup, BÁRMI lekérés.
Tudtommal a kocsinak a koordinátái saját magához jépest vannak, így nem számí a rotáció, de ha igen, akkor is tele van a hiv. fórum ilyenekkel.
« Utoljára szerkesztve: 2014. július 29. - 19:50:18 írta KovaNovik »

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #5 Dátum: 2014. július 29. - 19:55:03 »
0 Show voters
KovaNovik, nem számolsz a kocsi rotációjával - melyet én is kifelejtettem elõször. Ha a kocsi rotációja 0, akkor (lehet, hogy pont fordítva van, de most így lesz) szépen kivonod X-bõl a szélesség felét - megtalálva a jobb kerék -, hozzáadod - megtalálva a bal kerék. Ha viszont 180 fokot fordult el, ez az egész felcserélõdik, ha 90/270-et, akkor már más tengelybõl kell kivonni, ha pedig teljesen más iránbya fordul, akkor mindkét tengelybõl különbözõ módon kell kivonni. Remélem érthetõ a dolog, ha nem, bocsi :D

Nem elérhető KovaNovik

  • 1121
  • KovaNovik
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #6 Dátum: 2014. július 29. - 20:14:51 »
0 Show voters
Érthetõ, csak már 1001 scriptben megírták, ahol kellett másra. Minek írjak feleslegesen scripteket? :D
Lehet amúgy, hogy egyszerûbb elõszõr megnézni, hogy az elejéhez vagy a hátuljához vagy közelebb. Azok csak koordináták. GetPlayerDistanceFromPoint. if(tav1 < tav2). Ezután, ha nem akarok nagyon számolni (mert ehhez nem értek), akkor csak, 0 90 180 270 360 közül kell meghatározni, hogy a melyikhez van a legközelebb. Ez megmondja, bal, vagy jobb oldalán vagy. De tényleg jobb lenne kiszámolni, és tényleg lusta vagyok most ehhez.


Amúgy is, mostanábam egyre többször inkább leírom a megoldást. Egyszerûen nem éri meg magyarázni.

Melyik kerék van a legközelebb xyz ponthoz
« Válasz #7 Dátum: 2014. július 29. - 21:53:34 »
0 Show voters
Arra rájöttem, hogy ha a kocsi rotációja 0 akkor
ha a szélesség felét is és a magasság felét is kivonom akkor eljutok a bal hátsó kerékhez
ha a szélesség felét kivonom és a magasság felét hozzáadom akkor a bal elsõ kerékhez
ha pedig a szélességgel végzett mûveleteket felcserélem akkor pont a jobb oldali kerekeket kapom meg.
De ott akadtam el az egésszel, hogy általában az autó nem a 0 rotációra áll. És innentõl nem világos.

Melyik kerék van a legközelebb xyz ponthoz
« Válasz #8 Dátum: 2014. július 29. - 22:03:54 »
+1 Show voters
2.0 verzió
Hozz létre a kerekekre láthatatlan objecteteket, majd kérd le annak a távolságát. :D
xd

Nem elérhető Dfoglalo

  • 4069
  • Globális Moderátor
    • Profil megtekintése
Melyik kerék van a legközelebb xyz ponthoz
« Válasz #9 Dátum: 2014. július 29. - 22:09:48 »
0 Show voters
Kedves vityaa, egyszerû dolgod van még 90, 180, illetve 270 foknál is, csak utána bonyolódnak a dolgok. Talán még a 45, 135, illetve 225 is könnyen kiszámítható és szükséges ahhoz, hogy nagyjából pontos értéket kapjunk. De mindez valószínûleg elfelejthetõ Ryan_Adam hozzászólása miatt. Abból, hogy egy xd-vel megtoldottad a végét, arra következtetek, hogy nem vagy biztos a dologban. Kár, mert az ötleted nem hülyeség, sõt, talán a lehetõ legjobb megoldás! Repült egy zöld pacsi. :)

Melyik kerék van a legközelebb xyz ponthoz
« Válasz #10 Dátum: 2014. július 29. - 22:13:47 »
0 Show voters
Az \"xd\"-t azért írtam, mert azt hittem maga amit írtam nem lesz teljesen jó, de így teljesen más  :) Köszi.
Módosítva(rájöttem mire is akartál célozni): Ja igen, nem voltam benne teljesen biztos :D
« Utoljára szerkesztve: 2014. július 29. - 22:19:40 írta Ryan_Adam »

Melyik kerék van a legközelebb xyz ponthoz
« Válasz #11 Dátum: 2014. július 29. - 22:47:43 »
0 Show voters
Ez tényleg nagyon jó ötlet! Köszönöm!
« Utoljára szerkesztve: 2014. július 29. - 22:50:40 írta vityaa »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal