2012-09-12 47 views
0

我正在使用下面的动作脚本旋转我的立方体。Flash CS5 3D立方体中心点不起作用

我怎么会有它从错误的中心点旋转的问题,即使我已经把它放在中间。

我知道这可以使用动作脚本只是想知道语法或任何简单的建议。

function cubeRotate(e:Event){ 
    mycube3d.rotationY = mycube3d.rotationY+1; 
    mycube3d.rotationX = mycube3d.rotationX+1; 

} 
stage.addEventListener(Event.ENTER_FRAME,cubeRotate); 
+1

你用什么API绘制立方体? (例如,Flash Player 10的绘图API,第三方3D API:Away3D/PV3D /等)。您如何绘制立方体?你使用的是第三方的3D API,立方体是原始文件还是文件中的加载网格?你能否包含定义/设置'mycube3d'的代码? –

回答

0
setRegPoint(book, book.width/2, book.height/2); 

function setRegPoint(obj:DisplayObjectContainer, newX:Number, NewY:Number):void { 

    var bounds:Rectangle = obj.getBounds(obj.parent); 
    var currentRegZ:Number = obj.z - bounds.top; 

    var zOffset:Number = -50 - currentRegZ; 

    obj.z += zOffset; 

    for(var i:int = 0; i < obj.numChildren; i++) { 
     obj.getChildAt(i).z -= zOffset; 
    } 
} 

function cubeRotate(e:Event){  
    book.rotationY = book.rotationY+1  
    book.rotationX = book.rotationX+1  
} 

stage.addEventListener(Event.ENTER_FRAME,cubeRotate) 
0

如果试图通过拖动白色圆圈变“中心点”在Flash IDE - 尝试 围“mycube3d”(或内容)到另一部电影和移动它内部设置所需中心

由于.rotationY将围绕零坐标旋转对象并忽略ide的中心设置。

+0

我已经解决了解决方案,并将在另一篇文章中发布完整的项目。 – RyanCosans