查看: 1493|回复: 0
打印 上一主题 下一主题

Away3D学习笔记-物体位置和移动

[复制链接]

435

主题

2

听众

6371

积分

高级设计师

Rank: 6Rank: 6

纳金币
6372
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2012-9-4 15:57:00 |只看该作者 |倒序浏览

为了看清楚Away3D里物体的位置关系,首先来创建坐标系和三个平面。坐标系在Away3D里已经封装为Trident类,直接调用即可:






   
        
            
            1
            2
            
            
            
            var tri:Trident = new Trident(400, ***e);
            scene.addChild(tri);
            
            
        
   




创建参数第一个是坐标轴长度,第二个是要不要坐标轴字母。

再来三个坐标平面,这里使用GridPlane类效果比较好。






   
        
            
            1
            2
            3
            4
            5
            6
            7
            
            
            
            var p1:GridPlane = new GridPlane();
            p1.width = 800;
            p1.height = 800;
            p1.segmentsH = 2;
            p1.segmentsW = 2;
            p1.material = new WireframeMaterial(0xff0000);
            scene.addChild(p1);
            
            
        
   




通过旋转创建其他两个平面。

Away3D创建的几何体中心点都在其几何中心,如何要改变这个点,就需要使用movePivot方法,movePivot方法需要坐标参数,这个坐标是相对于几何体中心点的,也就是局部坐标。将一个100*100*100的立方体放到第一象限,则可以写:






   
        
            
            1
            
            
            
            cube.movePivot( -50, -50, -50);
            
            
        
   




随后物体的转轴也变到了中心点对应的三条坐标轴。

在实际应用中,控制物体位置常用moveForward,moveBackward等一系列函数,他们对应的移动方向分别是:
moveForward:向Z轴正向
moveBackward:向Z轴负向
moveLeft:向X轴负向
moveRight:向X轴正向
moveUp:向Y轴正向
moveDown:向Y轴负向
对应三个旋转函数:
pitch:绕X轴顺时针转
yaw:绕Y轴顺时针转
roll:绕Z轴顺时针转
这里说的顺时针,都是指从指定坐标轴的方向看过去的。由于上面9个函数也可以带负参数,所以其实只有6个函数,分别控制物体的6个自由度。
使用这些函数的好处就是,他们会随着物体位置自适应新的局部坐标系。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-11 15:06 , Processed in 0.094336 second(s), 29 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部