COMPILER


TUTORIAL

Keresés

Bemutatkozás

Ez az oldal elsősorban gyereknek készült. Egy általam kitalált programozási nyelvet fordít át WebGL nyelve. Az új böngészők ezt már képesek 3D-ben megjeleníteni.

Az oldal ingyenes, ezért bármilyen támogatásnak örülök. (Megosztás, reklámozás, anyagi támogatás.)

Niethammer Zoltán


PayPal azonosító:
niethammer.zoli@gmail.com 

3D Időkép

Fejlesztés alatt van a 3D időkép vizualizáció, amely az ingyenes adatbázis  alapján élőben mutatja a legfontosabb időjárási adatokat. 

A fejlesztés részleteiről itt olvashatsz: 3d-idokep

NaCl

A TÉRKÉP utasítással rácspontokba helyezhetünk egyszerű geometriai elemeket. A példában a NaCl rácsos szerkezete látható.

  

Fogaskerekek modellezése

Egy pont (x,y) koordinátáit a következő képlettel lehet kiszámolni, ha ismerjük az (S) szöget, és az origótól való távolságát (R):

x=sin(s)*R
y=cos(s)*R

A WEBGLBASIC nyelvben szögletes zárójeleket kell használni, illetve a változók neve előtt kötelező a $ karaktert használni:

$x=sin[$s]*$R
$y=cos[$s]*$R

A fogaskereket egy ciklussal tudjuk megrajzolni, mivel a P1, P2, P3, P4 pontok ismétlődnek körben N-szer. (N változó lesz a fogak száma.)

S1+S2+S3 = 360 / N

Pl.: Legyen 12 fog a keréken: s1+s2+s3 = 360/12 = 30 fok

Az egyszerűség kedvéért itt fokban számolok, de a függvények radiánt használnak. A 360 fok radiánban 2Pi, vagyis közelítőleg 6.28

Paraméterként megadjuk százalékosan az s1, és s3 arányát. A maradék fele lesz s2. Legyen F1, és F2 a két új paraméter.

Pl.: Ha F1=45%, F2=40%,
akkor s1=30*45% = 13.5 fok és s3 = 30*40% = 12 fok
s2 = (30 - 13.5 – 12)/2 = 2.25 fok

Pontok szögei: A ciklus 0..11 lépésben meghatározza a P1 pontok szögét: 0,30,60,12,….150. Ezek lesznek a bázispontok, amihez képest a többi pont szögértéke majd kiszámítódik. Ennek neve legyen PS. Ezek alapján a pontok szögei és távolságuk az origótól:

Pont

szög

távolság

P1

PS = 360 / N * x

R1

P2

PS+s1

R1

P3

PS+s1+s2

R2

P4

PS+s1+s3

R2

  

Először kipróbáltam a bázispontok kiszámítását. A koordináták helyére gömböket helyeztem.

Ezután a bázispontokból kiszámoltam a többi pont koordinátáját is. Ezekre a helyekre más színű gömbök kerültek.

Végül az egész ciklust egy alakzat objektum belsejébe helyeztem. Kapott egy vastagságot, és egy kis lekerekítést is.

Az alakzat előtti sorba egy hely utasítással bárhova elhelyezhető a fogaskerék. Animálni csak a Z tengely körüli forgását kellett. 

 

 

 

 

Adatok frissítése

Az élő 3D térkép itt tesztelhető: http://webglbasic.com/idokep/terra/

Az időjárási adatokat a https://openweathermap.org/ szolgáltatja. Az egyes mérési pontok frissítése eltérő lehet. Az oldal szerint maximum 2 óra késleltetés fordulhat elő. Az eddigi tapasztalataim szerint átlagosan 25-35 perc volt a késés. A térképen piros karikával jelzem azokat a helyeket, ahol 1 óránál régebbi adatok láthatóak.

Előfordulhat, hogy nem érkezik adat az adott helyről. Ezeket lila körök jelzik.

Ezeket a jelzéseket ki lehet kapcsolni a jobb felső Controlls menüben, a timeout kapcsolóval.