- 最后登录
- 2013-9-29
- 注册时间
- 2012-8-20
- 阅读权限
- 90
- 积分
- 6371
- 纳金币
- 6372
- 精华
- 0
|
为了看清楚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个自由度。
使用这些函数的好处就是,他们会随着物体位置自适应新的局部坐标系。
|
|