Kierto pystysuunnassa
Posted: Mon Oct 15, 2012 2:01 pm
Kuinkas myös y-kierto laitetaan kyseiseen ohjelmaan?
Code: Select all
SCREEN 640, 480
//alustetaan koordinaatit
Type point
Field x#
Field y#
Field z#
EndType
For i = 0 To 499
p.point = New(point)
p\x = Rnd(-1,1)
p\y = Rnd(-1,1)
p\z = Rnd(-1,1)
Next i
Repeat
//pyörityskulma sekä sen valmiiksi laskettavat sini ja kosini
ang# = ang + 1
cosa# = Cos(ang)
sina# = Sin(ang)
Lock
For p.point = Each point
//itse pyöritys, joka tapahtuu y-akselin ympäri (y-arvot eivät muutu)
x# = p\x*cosa + p\z*sina
z# =-p\x*sina + p\z*cosa
//projisoidaan piste
s# = 400.0/(z+3.0)
rx = x*s+320
ry = p\y*s+240
//piirretään sen kohdalle ruksi
Line rx-1, ry-1, rx+1, ry+1
Line rx-1, ry+1, rx+1, ry-1
Next p
Unlock
DrawScreen
Forever