Plazma sayı 1, sayfa 58

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 58

<body bgcolor="#CCCCCC" onResize="return false" onContextMenu="return false" onSelectStart="return false" onScroll="return false"> <script> // Küplerin Kenarlarını Temsil Eden Grafik Parçaları for(i = 0; i < 12; i++) document.write("<v:line id='l" + i + "' from='0 0' to='0 0'/>");

// Global Değişkenleri Tanımla var firstCoorX = new Array(100, 100, 100, 100, -100, -100, -100, -100); var firstCoorY = new Array(100, 100, -100, -100, 100, 100, -100, -100); var firstCoorZ = new Array(100, -100, 100, -100, 100, -100, 100, -100); var coorX = new Array(); var coorY = new Array(); var coorZ = new Array(); var px = new Array(); var py = new Array(); var zoom = 300, dist = 350; var midX = 200, midY = 200; var PI = 3.1415926535; var angleXaxis = 0, angleYaxis = 0, angleZaxis = 0; var hexN = new Array(); hexN[0] = "0";hexN[1] = "1";hexN[2] = "2";hexN[3] = "3"; hexN[4] = "4";hexN[5] = "5";hexN[6] = "6";hexN[7] = "7"; hexN[8] = "8";hexN[9] = "9";hexN[10] = "A";hexN[11] = "B"; hexN[12] = "C";hexN[13] = "D";hexN[14] = "E";hexN[15] = "F";

// Küp Çevirme Fonksiyonu function rotateCube() { for(i = 0; i < 8; i++) { // X Ekseninde Çevir coorY[i] = firstCoorY[i] * Math.cos(angleXaxis / 180.0 * PI) + firstCoorZ[i] * Math.sin(angleXaxis / 180.0 * PI); coorZ[i] = firstCoorY[i] * Math.sin(angleXaxis / 180.0 * PI) - firstCoorZ[i] * Math.cos(angleXaxis / 180.0 * PI); // Y Ekseninde Çevir coorX[i] = coorZ[i] * Math.cos(angleYaxis / 180.0 * PI) + firstCoorX[i] * Math.sin(angleYaxis / 180.0 * PI); coorZ[i] = coorZ[i] * Math.sin(angleYaxis / 180.0 * PI) - firstCoorX[i] * Math.cos(angleYaxis / 180.0 * PI); // Z Ekseninde Çevir temp = coorX[i]; coorX[i] = coorX[i] * Math.cos(angleZaxis / 180.0 * PI) + coorY[i] * Math.sin(angleZaxis / 180.0 * PI); coorY[i] = temp * Math.sin(angleZaxis / 180.0 * PI) - coorY[i] * Math.cos(angleZaxis / 180.0 * PI); } // Dönüş Açılarını Arttır angleXaxis = (angleXaxis + 1) % 360; angleYaxis = (angleYaxis + 2) % 360; angleZaxis = (angleZaxis + 3) % 360; }

// İzdüşüm ve Plot Fonksiyonu function setCube() { for(i = 0; i < 8; i++) // Her 8 Köşe İçin { if(coorZ[i] + dist > 0) // Eğer Görünür Durumdaysa { // FORMÜL: projection_x = center_of_the_area + (x / (z + distance) * zoom) px[i] = midX + (coorX[i] / (coorZ[i] + dist) * zoom); // FORMÜL: projection_y = middle_of_the_area + (y / (z + distance) * zoom) py[i] = midY + (coorY[i] / (coorZ[i] + dist) * zoom);

Klavyeyle gezinmek için ← ve → tuşları.