SCREEN 12 '640*480 16 couleurs CLS DIM d(3, 2) 'tableau de surface '1:x,2:y,3:z / 1:l,2:h,3:L maxx = 1 '\ maxy = 1 ' >pas d'unitee maxz = 1 '/ reso = 20 'resolution d'affichage (zoom) xca = 500 '\ yca = 500 ' >position camera en cm zca = 0 '/ angx = 0 '\en degre angz = 0 '/angle de vue camera xt = 1.1 '\ yt = 1.1 ' >effet du tampon zt = 1.1 '/ 'matrice programmer en dm DIM matrice(maxx, maxy, maxz, 7)'tableau general 'x:1 , y:2 , z:3 , l:4 , h:5 , L:6 '7:nom texture texx = 10 '\ texy = 10 '/dimention texture DIM texture(texx, texy) 'texture code avec code couleur matrice(1, 1, 1, 1) = 0 matrice(1, 1, 1, 2) = 0 matrice(1, 1, 1, 3) = 0 matrice(1, 1, 1, 4) = 1000 matrice(1, 1, 1, 5) = 1000 matrice(1, 1, 1, 6) = 0 matrice(1, 1, 1, 7) = 0 FOR z = 1 TO maxz FOR y = 1 TO maxy FOR x = 1 TO maxx d(1, 1) = matrice(x, y, z, 1) 'x d(2, 1) = matrice(x, y, z, 2) 'y d(3, 1) = matrice(x, y, z, 3) 'z d(1, 2) = matrice(x, y, z, 4) 'l d(2, 2) = matrice(x, y, z, 5) 'h d(3, 2) = matrice(x, y, z, 6) 'L FOR zp = 0 TO d(3, 2) / reso FOR yp = 0 TO d(2, 2) / reso FOR xp = 0 TO d(1, 2) / reso IF d(1, 1) + xp < xca THEN xct = d(1, 1) + xp + xca END IF IF d(1, 1) + xp > xca THEN xct = d(1, 1) + xp - xca END IF IF d(2, 1) + yp < yca THEN yct = d(2, 1) + yp + yca END IF IF d(2, 1) + yp > yca THEN yct = d(2, 1) + yp - yca END IF IF d(3, 1) + zp < zca THEN zct = d(3, 1) + zp + zca END IF IF d(3, 1) + zp > zca THEN zct = d(3, 1) + zp - zca END IF xf = (xct / reso) / xt + d(1, 1) + xp yf = (yct / reso) / yt + d(2, 1) + yp zf = (zct / reso) / zt + d(3, 1) + zp LINE (xf, yf - zf)-(xf, yf - zf), 14 NEXT xp NEXT yp NEXT zp NEXT x NEXT y NEXT z