<script src="http://spelprogrammering.nu/simple.js">

function createCube()
{
  cubePoints = [];
  for (var x = -1; x <= 1; x+=2)
    for (var y = -1; y <= 1; y+=2)
      for (var z = -1; z <= 1; z+=2)
        cubePoints.push(new math.Point3D(x, y, z, "green", 300));

  cubeLinesFrom = [0, 0, 0, 4, 4, 6, 6, 2, 3, 3, 1, 7];
  cubeLinesTo   = [1, 4, 2, 5, 6, 7, 2, 3, 1, 7, 5, 5];
}

function createPyramid()
{
  pyramidPoints = [];
  pyramidPoints.push(new math.Point3D(1,  1,  -1, "orange", 300));
  pyramidPoints.push(new math.Point3D(-1, 1,  -1, "orange", 300));
  pyramidPoints.push(new math.Point3D(-1, -1, -1, "orange", 300));
  pyramidPoints.push(new math.Point3D(1,  -1, -1, "orange", 300));
  pyramidPoints.push(new math.Point3D(0,   0,  1, "orange", 300));

  pyramidLinesFrom = [0, 0, 0, 1, 1, 2, 2, 3, 3];
  pyramidLinesTo   = [1, 3, 4, 2, 4, 3, 4, 2, 4];
}

function start()
{
  createCube();
  createPyramid();

  save();
  translate(-400, -200);

  for (index in cubePoints)
    cubePoints[index].rotate(0.25,0.25,0);

  for (index in cubeLinesFrom)
    cubePoints[cubeLinesFrom[index]].
      lineTo(cubePoints[cubeLinesTo[index]], "green", 10);


  restore();
  translate(450, 200);
  for (index in pyramidPoints)
    pyramidPoints[index].rotate(-1.5,0.3,0);

  for (index in pyramidLinesFrom)
    pyramidPoints[pyramidLinesFrom[index]].
      lineTo(pyramidPoints[pyramidLinesTo[index]], "orange", 10);
}

</script>
        
Gå tillbaka