Krogla (sphere) |
Primer tvorbe krogle krogla = sphere (pos=vector(1,2,1), radius=2)
Primeri sprememb položaja in barve krogle: krogla.pos = vector(15,11,9) # spremeni položaj (x,y,z)
krogla.pos.x = 15 # sprememba le položaja.x krogla.color = vector(0,0,1) # krogla bo modra |
Kvader (box) |
Primer tvorbe kvadra
kvader = box (pos=vector(0,0,0), axis=vector(1,1,1), length=5, height=3, width=4)
#atribut axis pomeni smer kvadra (rotacija v oseh x,y,z) |
Valj (cylinder) |
Primer tvorbe cilindra predmet =
cylinder (pos= vector(0,-0.5,1), axis= vector (2,1,-1), radius=1)
Središče enega konca cilindra je pri x=0, y=-0.5, z=1. Smer in dolžino cilindra določa vektor (2,1,-1). Polmer cilindra je 1. Atributi cilindra in njihove privzete vrednosti so: pos (0,0,0), x (0), y(0), z(0), axis (1,0,0), length (1), color (1,1,1) kar je color.white, red (1), green (1), blue (1), up (0,1,0). |
Stožec (cone) |
Stožec ima krožni prerez in se zožuje v vrh. Primer tvorbe stožca:
stozec = cone(pos= vector(-3,1,0), axis=vector(4,0,0),radius=2)
Stožec ima večino atributov in njihovih privzetih vrednosti kot
cilinder. Poleg tega ima še atribut radius, ki je polmer širokega
konca stožca. Privzeta vrednost je 1. |
Piramida (Pyramid) |
piramida = pyramid (pos= vector(0,-1,0),size= vector(4,4,6)) Piramida ima enake atribute kot cilinder. Poleg tega ima še dodatne atribute:. height : višina v smeri y,privzeto 1) width: širina v smeri z, privzeto 1 size (dolžina, višina, širina), privzeto (1,1,1) |
Obroč (ring) |
Primer tvorbe obroča:
obroc = ring(pos= vector(-1,-1,-1),axis= vector(0,0,1), radius=3, thickness=1)
Atribut axis vpliva le na smer, ne pa na velikost obroča. Dodatna atributa obroča sta: radius zunanji polmer obroča, privzeto = 1 thickness: debelina obroča(1/10 polmera, če ni drugače določeno) |
Elipsoid (ellypsoid) |
cepelin =
ellipsoid (pos= vector(-0.2,-0.1,0),length=10, height=2, width=4, axis= vector(1,1,1))
Dolg elipsoid je podoben cigari, kratek spominja na tableto. Atributi elipsoida so enaki atributom kvadra.
|
Krivulja (curve) |
Primer tvorbe krivulje
krivulja = curve (pos=[vector(0,0,0), vector(1,0,0), vector(2,1,0), vector(1.7,2,0),
vector(0,3,0), vector(-2,3,0), vector(-3,1,0), vector(-3.5,0,0)], radius=0.2)
Krivulje prikazujejo preme črte med točkami. Krivuljo lahko podamo z eksplicitnim zaporedjem koordinat, vpisanih med oklepaji, tako kot pri vseh Pythonovih seznamih. Nekateri atributi, kot na primer pos (položaj) ali color (barva) se od točke do točke na krivulji lahko razlikujejo. Te atribute hranimo v številčnih poljih. števila v takih poljih lahko dostopamo z naslavljanjem n-tega elementa v zaporedju Tako je krivulja.pos[0] položaj prve točke v krivulji "krivulja. Več podrobnosti o krivuljah. |
Helix (vijačnica) |
vzmet = helix(pos=vector(-2,0,1), axis=vector (2,0,0), length=5, radius=2, thickness=0.4)
Objekt helix ima naslednje atribute oziroma njihove privzete vrednosti: Opomba: atribut pos za cylinder, arrow, cone, pyramid in helix ustreza
enemu koncu objekta, pri objektih box, sphere ali ring pa to ustreza središču objekta. |
Puščica (arrow) |
puscica = arrow (pos=vector(-1,0,1),axis= vector(5,0,0), shaftwidth=1)
Puščica ima enake atribute kot na primer cilinder. Poleg tega pa še naslednje: shaftwidth, privzeto shaftwidth = 0.1*(dolžina puščice) headwidth, privzeto headwidth = 2*shaftwidth headlength, privzeto headlength = 3*shaftwidth |
Tekst (text) |
3D Tekst tvorimo tako:
besedilo = text (pos= vector(-10,3,0),text='Lep pozdrav', color=color.red, depth=0.3, justify='center')
|
Oznaka (label) |
Objekt label omogoča prikaz oznake v okvirju, s črto povezanem z določeno točko. Slika na levi kaže tekst Earth (zemlja), povezan s kroglo, ki naj bi predstavljala zemljo. V tem primeru bi tekst tvorili tako:
earth = sphere()
earthlabel = label (pos=earth.pos, text='Zemlja', xoffset=20, yoffset=12, space=earth.radius, height=10, border=6) Posebnost objekta "label" je, da je več atributov navedenih v pikslih zaslona in ne v "svetovnih koordinatah". |
Objekte lahko poenostavljeno določimo z naslednjimi privzetimi vrednostmi:
cylinder() je enako kot cylinder(pos= vector(0,0,0), axis= vector(1,0,0), radius=1)
arrow() je enako kot arrow(pos= vector(0,0,0), axis= vector(1,0,0), radius=1)
cone() je enako kot cone(pos=vector(0,0,0), axis= vector(1,0,0), radius=1)
pyramid() je enako kot pyramid(pos= vector(0,0,0), size= vector(1,1,1), axis= vector(1,0,0))
sphere() je enako kot sphere(pos= vector(0,0,0), radius=1 )
ring() je enako kot ring(pos= vector(0,0,0),axis=vector(1,0,0),radius=1)
box() je enako kot box(pos= vector(0,0,0), size= vector(1,1,1))
curve() vzpostavi "prazno" krivuljo, kateri lahko točke priključujemo (append)