Image_3D
[ class tree: Image_3D ] [ index: Image_3D ] [ all elements ]

Source for file ascii_demo.php

Documentation is available at ascii_demo.php

  1. <?php
  2.  
  3. $iterations = 40;
  4. $images 'php://output';
  5.  
  6. require_once('Image/3D.php');
  7.  
  8. $world = new Image_3D();
  9. $world->setColor(new Image_3D_Color(000));
  10.  
  11. $light1 $world->createLight('Light'array(-5000-500));
  12. $light1->setColor(new Image_3D_Color(2555050));
  13.  
  14. $light2 $world->createLight('Light'array(5000-500));
  15. $light2->setColor(new Image_3D_Color(5050255));
  16.  
  17. $p1 $world->createObject('torus'array('inner_radius' => 50'outer_radius' => 90'detail_1' => 10'detail_2' => 1));
  18. $p1->setColor(new Image_3D_Color(255255255));
  19.  
  20. $world->setOption(Image_3D::IMAGE_3D_OPTION_BF_CULLINGfalse);
  21. $world->setOption(Image_3D::IMAGE_3D_OPTION_FILLEDtrue);
  22.  
  23. $rotation $world->createMatrix('Rotation'array(0015));
  24. $Xrotation $world->createMatrix('Rotation'array(1020));
  25. $move $world->createMatrix('Move'array(00-10));
  26. $renderer $world->createRenderer('perspectively');
  27. $driver $world->createDriver('ASCII');
  28.  
  29. $world->render(2 * 1006 * 50$images);
  30.  
  31. $start microtime(true);
  32. $i = 0;
  33. while ($i++ < $iterations{
  34.     $light1->transform($rotation);
  35.     $light2->transform($rotation);
  36.     $p1->setColor(new Image_3D_Color(255255255));
  37.     $p1->transform($Xrotation);
  38.     
  39.     $driver->reset();
  40.     $renderer->render($images);
  41. }
  42.  
  43. $time microtime(true$start;
  44. printf("%2.2f fps\n"$iterations $time);

Documentation generated on Mon, 11 Mar 2019 15:48:13 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.