HSV CONE
/**
* Copyright points ( http://wonderfl.net/user/points )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/eW1y
*/
package {
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import org.papervision3d.view.stats.*;
import org.papervision3d.view.*;
import org.papervision3d.view.*;
import org.papervision3d.view.layer.*;
import org.papervision3d.core.effects.*;
import org.papervision3d.core.geom.*;
import org.papervision3d.core.geom.renderables.*;
import org.papervision3d.core.effects.utils.BitmapClearMode;
import frocessing.color.ColorHSV;
[SWF(backgroundColor="#333333")]
public class Main extends BasicView {
public function Main() {
var stats:StatsView=new StatsView(renderer);
addChild(stats);
camera.x=0;
camera.z=1;
camera.y=0;
var layer:BitmapEffectLayer=new BitmapEffectLayer(viewport,stage.stageWidth,stage.stageHeight,true,0,BitmapClearMode.CLEAR_PRE,true);
layer.clearBeforeRender=true;
viewport.containerSprite.addLayer(layer);
var pixels:Pixels=new Pixels(layer);
scene.addChild(pixels);
for (var k:int=0; k < 80000; k++) {
var v:Number=Math.sqrt(Math.random());
do {
var s:Number=Math.random();
} while (v < s);
var h:Number=Math.random() * 360;
var pointX:Number=s * 25 * Math.sin(h * Math.PI / 180);
var pointZ:Number=s * 25 * Math.cos(h * Math.PI / 180);
var pointY:Number=v * 50 - 25;
var hsv:ColorHSV=new ColorHSV(h,s,v);
var pixel:Pixel3D=new Pixel3D(hsv.value + 0xff000000,pointX,pointY,pointZ);
pixels.addPixel3D(pixel);
}
//
startRendering();
stage.addEventListener(Event.ENTER_FRAME,loop);
//
}
private function loop(e:Event):void {
camera.x=50 * Math.sin(getTimer() / 2000);
camera.z=50 * Math.cos(getTimer() / 1000);
camera.y=100 * Math.sin(getTimer() / 1000);
}
}
}