here preview of this code
http://www.closier.nl/playground/cube_trapeze.swf

cheers,
Fabrice

On Nov 3, 12:10 pm, Fabrice3D <[email protected]> wrote:
> hey Jordi,
> this was bugging me,
> so spend few minutes to see...
>
> works perfectly :)
>
> Fabrice
>
> code :
>
> private function buildTest():void
>                 {
>                         var mat:BitmapMaterial = new 
> BitmapMaterial(somebitmapdatafor  
> map6); //for test on my machine
>
>                         var subd:int = 6;
>                         var cube:Cube = new Cube({map6:true, width:1500, 
> height:1500, depth:
> 1500, material:mat, segmentsW:subd, segmentsH:subd});
>
>                         var startH:Number = 1000;
>                         var factor:Number = 1500/startH;
>                         var step:Number = factor/subd;
>
>                         var sortedV:Array = (cube as Mesh).vertices.concat();
>                         sortedV.sortOn("x", 16);
>
>                         var basex:Number;
>                         var l:int = sortedV.length;
>
>                         var dico:Dictionary = new Dictionary();
>
>                         for (var i:int = 0;i< l;++i){
>                                 basex = Math.floor(sortedV[i].x);
>                                 while(i<l && Math.floor(sortedV[i].x) == 
> basex){
>                                         //make sure its applied only once
>                                         if(!dico[sortedV[i]]){
>                                                 dico[sortedV[i]] = true;
>                                                 (cube as 
> Mesh).updateVertex(sortedV[i], sortedV[i].x,  
> sortedV[i].y*factor, sortedV[i].z);
>                                         }
>
>                                          i++;
>                                  }
>                                  i--;
>
>                                 if(!dico[sortedV[i]]){
>                                         dico[sortedV[i]] = true;
>                                         (cube as 
> Mesh).updateVertex(sortedV[i], sortedV[i].x,  
> sortedV[i].y*factor, sortedV[i].z);
>                                 }
>
>                                 factor+= step;
>
>                         }
>
>                         this.scene.addChild(cube);
>                 }
>
> On Nov 3, 2009, at 10:10 AM, jordi monty wrote:
>
>
>
> > Hi,
> > I've a cube that I transform to a "trapezoid":
>
> > cube = new Cube( {ownCanvas:true});
> > cube.width=5;
> > cube.height=20;
> > cube.depth=2;
>
> > cube.vertices[0].y*=0.5;
> > cube.vertices[1].y*=0.5;
> > cube.vertices[4].y*=0.5;
> > cube.vertices[5].y*=0.5;
>
> > I want to apply this matrix texture:
>
> >http://marcosamedida.tecnopixel.com/texture.jpg
>
> > When my cube is a cube, the texture remains as a matrix, but when I
> > modify the vertices, the texture is deformed.
> > You can see it:
> >http://marcosamedida.tecnopixel.com/away3d.swf
>
> > I've also tried with TransformBitmapMaterial with globalprojections
> > and projectionvector, but I cannot get it.
>
> > Can anyone help me,please?

Reply via email to