box with no roof [Alternativa3D 7.7]

by shinta
Starting from the template https://docs.alternativaplatform.com/display/TDEN/Hello,+Alternativa3D (Alternativa3D "Hello world!" application), I made an empty colored box.
♥0 | Line 61 | Modified 2012-10-23 16:11:45 | MIT License
play

ActionScript3 source code

/**
 * Copyright shinta ( http://wonderfl.net/user/shinta )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/su1o
 */

package{
    
    import alternativ7.engine3d.controllers.SimpleObjectController;
    import alternativ7.engine3d.core.Camera3D;
    import alternativ7.engine3d.core.Object3DContainer;
    import alternativ7.engine3d.core.View;
    import alternativ7.engine3d.materials.FillMaterial;
    import alternativ7.engine3d.primitives.Box;
    import alternativ7.engine3d.primitives.Sphere;
    
    import flash.display.Sprite;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    import flash.events.Event;

    public class main extends Sprite {
        
        private var rootContainer:Object3DContainer = new Object3DContainer();
        private var objectContainer:Object3DContainer;
        private var camera:Camera3D;
        private var box:Box;
        private var innerBox:Box;
        private var controller:SimpleObjectController;
        
        public function main() {
            stage.align = StageAlign.TOP_LEFT;
            stage.scaleMode = StageScaleMode.NO_SCALE;
            
            // Camera and view
            camera = new Camera3D();
            camera.view = new View(stage.stageWidth, stage.stageHeight);
            addChild(camera.view);
            addChild(camera.diagram);
            
            // Initial position
            camera.rotationX = -120*Math.PI/180;
            camera.y = -800;
            camera.z = 400;
            rootContainer.addChild(camera);
            
            // add objectcontainer to root
            objectContainer = new Object3DContainer();
            rootContainer.addChild(objectContainer);
            
            // inner Coloured box
            var dm:Array = [];
            
            dm[0] = new FillMaterial(0x00FF00, 3, 3, 0x909090);
            dm[1] = new FillMaterial(0x9900CC, 3, 3, 0x909090);
            dm[2] = new FillMaterial(0x33FFFF, 3, 3, 0x909090);
            dm[3] = new FillMaterial(0xFF0066, 3, 3, 0x909090);
            dm[4] = new FillMaterial(0x909090, 3, 3, 0x909090);
            
            innerBox = new Box(100, 100, 100, 1, 1, 1,true, false,dm[0],dm[1],dm[2],dm[3],dm[4]);
            objectContainer.addChild(innerBox);
            
            // Coloured box
            // forked from narutohyper's Material [Alternativa3D 7.6 TIPS]
            var cm:Array = [];
            
            cm[0] = new FillMaterial(0x00FF00, 3, 3, 0x909090);
            cm[1] = new FillMaterial(0x9900CC, 3, 3, 0x909090);
            cm[2] = new FillMaterial(0x33FFFF, 3, 3, 0x909090);
            cm[3] = new FillMaterial(0xFF0066, 3, 3, 0x909090);
            cm[4] = new FillMaterial(0x909090, 3, 3, 0x909090);
            
            box = new Box(100, 100, 100, 1, 1, 1,false, false,cm[0],cm[1],cm[2],cm[3],cm[4]);
            objectContainer.addChild(box);
            
            //controler
            controller = new SimpleObjectController(stage, objectContainer, 100);
            controller.mouseSensitivity = 1
            controller.unbindAll()
                
            // Listeners
            stage.addEventListener(Event.ENTER_FRAME, onEnterFrame);
        }
        
        private function onEnterFrame(e:Event):void {
            // Width and height of view
            camera.view.width = stage.stageWidth;
            camera.view.height = stage.stageHeight;
            
            // Render
            camera.render();
            
            // Controller
            controller.update();
        }
        
    }
}