1<?php 2 3require_once('Image/3D.php'); 4 5// Erstellen der Welt 6$world = new Image_3D(); 7$world->setColor(new Image_3D_Color(255, 255, 255)); 8 9// Erstellung einer globalen Lichtquelle 10$light = $world->createLight('Light', array(-2000, -2000, -2000)); 11$light->setColor(new Image_3D_Color(155, 155, 155)); 12 13// Eines Punktuellen Lichtes mit distancefalloff 14$light = $world->createLight('Point', array(0, -100, 0, 'distance' => 200, 'falloff' => 2)); 15$light->setColor(new Image_3D_Color(255, 0, 0)); 16 17// Eines Spotlights 18$light = $world->createLight('Spotlight', array(500, -500, -300, 'aim' => array(50, 30, 0), 'angle' => 10, 'float' => 2)); 19$light->setColor(new Image_3D_Color(0, 255, 0, 100)); 20 21// Erstellen einer Kugel 22$sphere = $world->createObject('sphere', array('r' => 120, 'detail' => 5)); 23$sphere->setColor(new Image_3D_Color(200, 200, 200)); 24$sphere->transform($world->createMatrix('Move', array(70, 40, 0))); 25 26// Import eines 3ds-Objekts (Schriftzug "Image 3D") 27$text = $world->createObject('3ds', 'docs/examples/models/Image_3D.3ds'); 28$text->setColor(new Image_3D_Color(255, 255, 255, 180)); 29$text->transform($world->createMatrix('Rotation', array(90, 0, 0))); 30$text->transform($world->createMatrix('Scale', array(5, 5, 5))); 31$text->transform($world->createMatrix('Move', array(0, -40, 0))); 32 33// Transformationen auf alle Objecte anwenden 34$text->transform($world->createMatrix('Scale', array(2, 2, 2))); 35 36// Erzeugen des gewuenschten Renderers 37$world->createRenderer('perspectively'); 38 39// Erzeugen des gewuenschten Ausgabetreibers 40$world->createDriver('SVG'); 41 42// Rendern des Bildes 43$world->render(800, 400, 'example.svg'); 44 45// Ausgabe einiger Statistiken zu dem gerade erstellten Bild 46echo $world->stats(); 47