Hola a todos haber si alguien me puede yudar... he creado un cono y he
puesto en cada uno de sus vertices un
plano. lo que quiero hacer es que los lados más cortos de los planos
miren al centro, como si fueran unas aspas de un molino.
este es el codigo que tengo:
package {
import org.papervision3d.view.BasicView;
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.MouseEvent;
import
org.papervision3d.core.proto.MaterialObject3D;
import org.papervision3d.events.InteractiveScene3DEvent;
import org.papervision3d.materials.BitmapFileMaterial;
import org.papervision3d.materials.BitmapMaterial;
import org.papervision3d.materials.ColorMaterial;
import org.papervision3d.materials.MovieMaterial;
import org.papervision3d.objects.DisplayObject3D;
import org.papervision3d.events.FileLoadEvent;
import
org.papervision3d.objects.primitives.Cone;
import org.papervision3d.objects.primitives.Plane;
import
org.papervision3d.core.math.Number3D;
public class carrusel extends BasicView
{
private var pivotDO3D:DisplayObject3D;
public function carrusel()
{
stage.frameRate = 40;
init();
startRendering();
}
private function init():void
{
pivotDO3D = new DisplayObject3D();
scene.addChild(pivotDO3D);
//creo el cilindro pero no lo añado
var cono:Cone= new Cone(null,100,700,7,7);
//creo sus vertices
var numberOfVerts:uint = cono.geometry.vertices.length ;
for( var i:uint=0;i<26;i++)
{
var plane:Plane = new Plane(createBitmapMaterial(),75,50);
//añado un plano en cada coordenada
plane.x = cono.geometry.vertices[i].x;
plane.y = cono.geometry.vertices[i].y;
plane.z = cono.geometry.vertices[i].z;
plane.material.doubleSided = true;
plane.localRotationX = 90;
plane.localRotationZ = 90;
pivotDO3D.addChild(plane);
pivotDO3D.rotationX=270;
pivotDO3D.rotationZ=90;
}
viewport.interactive = true;
camera.z = 600;
camera.zoom = 80;
camera.target=pivotDO3D;
}
//creo el BitmapMaterial
private function
createBitmapMaterial():BitmapMaterial
{
var material:BitmapFileMaterial = new
BitmapFileMaterial("assets/image1.jpg",true);
return material;
}
override protected function
onRenderTick(e:Event=null):void
{
pivotDO3D.z +=(stage.mouseY - stage.stageHeight / 2) / 200;
super.onRenderTick();
}
}
}
--
Has recibido este mensaje porque estás suscrito al grupo "ESPapervision3D" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a
ESPaper...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a
ESPapervision...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en
http://groups.google.com/group/ESPapervision3D?hl=es.