NetLogo model - Telesa v treh razsežnostih

Model riše 3-razsežne modele osnovnih teles

Model je ustvarjen s programskim jezikom NetLogo

Poglej oz. naloži datoteko: 3D_telesa.nlogo

Opis modela

Model s pomočjo preslikave iz kartezičnih koordinat v sferične ustvari 3-razsežna telesa s pomočjo 2-razsežnih želvic.

Kako deluje

Program naključno ustvari želvice na ploskvi telesa v kartezičnih (x,y,z) ali sferičnih (fi, theta, z) koordinatah (odvisno od tega, katere so bolj primerne). Ne glede na to pa koordinate shranimo v sferičnih koordinatah (ker jih tam lažje rotiramo). Telesa ustvari s pomočjo preslikave iz kartezičnih koordinat v sferične. Učinek tretje dimenzije dosežemo s pomočjo barv. Želvice, ki so nam "najbližje" pobarva belo, nato pa se barva preko različnih odtenkov poljubne barve spremeni v črno ( črne želvice so tiste, ki so "najbolj oddaljene" od nas).
Položaj želvice je vedno shranjen v sferičnih koordinatah, kjer telesa enostavno rotiramo okoli z-osi s spreminjanjem kota fi.

Preslikava iz kartezičnih koordinat v sferične:

x = r * cos(fi) = p * sin(theta) * cos(fi)
y = r * sin(fi) = p * sin(theta) * sin(fi)
z = p * cos(fi)

fi: Ko želvico preslikamo na x-y ravnino, fi meri kot med želvico in osjo x
theta: kot theta meri naklon želvice glede na z-os
p: meri oddaljenost želvice od središča

Navodila za uporabo

S klikom na gumbe "NASTAVI - ...", ustariš različna telesa. Želvice se naključno porazdelijo po plašču telesa.

S klikom na gumb "ZAVRTI" se telo začne vrteti okoli z-osi.

S premikom drsnika "BARVA" lahko spremeniš barvo telesa.

S premikom drsnika "STEVILO_ZELVIC" določiš število želvic, ki bodo na plašču telesa.

S premikom drsnika "VELIKOST_TELESA" lahko telo povečaš ali pomanjšaš.

S premikom drsnika "HITROST_VRTENJA" povečaš, zmanjšaš ali obrneš smer vrtenja telesa okoli z-osi.

(Vrtenje želvic je doseženo s pomočjo spreminjanja spremenljivke fi v odvisnosti od hitrosti vrtenja. Vrtenje (okoli z-osi) je enostavneje implementirati v sferičnih koordinatah, premikanje pa v kartezičnih.)

Kaj lahko opazimo

Želvice, ki so bližje na y-osi (na pozitivnem delu y-osi), so svetlejše od tistih, ki so bolj oddaljene (so na negativnem delu y-osi).

Poskusi sam

Če spremeniš hitrost vrtenja ali barvo želvic, boš takoj opazil spremembo.

Dopolni model

[LAŽJE]

[TEŽJE]

NetLogo

Oglej si funkcijo scale-color, s pomočjo katere je ustvarjen učinek 3 razsežnosti.

Avtorske pravice

Pri sklicevanju na ta model v znanstvenih publikacija uporabite: Wilensky, U. (1998). NetLogo 3D Solids model. http://ccl.northwestern.edu/netlogo/models/3DSolids. Center for Connected Learning and Computer-Based Modeling, Northwestern University, Evanston, IL.

V ostalih publikacija uporabite: Copyright 1998 Uri Wilensky. Vse pravice pridrzane. Pogoje uporabe si lahko ogledate na http://ccl.northwestern.edu/netlogo/models/3DSolids.

Model je v slovenščino prevedel Janez Štebe, original pa lahko najdete na naslovu http://ccl.northwestern.edu/netlogo/models/3DSolids


Valid XHTML 1.0 Transitional Valid CSS!