public class CameraView {
- Point3D camCenter;
- Point3D upLeft;
- Point3D upRight;
- Point3D downLeft;
- Point3D downRight;
+ Point3D cameraCenter;
+ Point3D topLeft;
+ Point3D topRight;
+ Point3D bottomLeft;
+ Point3D bottomRight;
public CameraView(final Avatar avatar, final double zoom) {
computeCameraCoordinates(avatar, zoom);
}
private void computeCameraCoordinates(final Avatar avatar, final double zoom) {
- camCenter = new Point3D(avatar.getLocation()).scaleDown(zoom);
+ cameraCenter = new Point3D(avatar.getLocation()).scaleDown(zoom);
- upLeft = new Point3D(camCenter.x, camCenter.y, camCenter.z
- + Camera.CAMERA_SIZE);
- upRight = new Point3D(upLeft);
- downLeft = new Point3D(upLeft);
- downRight = new Point3D(upLeft);
+ topLeft = new Point3D(cameraCenter.x, cameraCenter.y, cameraCenter.z
+ + Camera.SIZE);
+ topRight = new Point3D(topLeft);
+ bottomLeft = new Point3D(topLeft);
+ bottomRight = new Point3D(topLeft);
final float viewAngle = (float) .6;
- upLeft.rotate(camCenter, -viewAngle, -viewAngle);
- upRight.rotate(camCenter, viewAngle, -viewAngle);
- downLeft.rotate(camCenter, -viewAngle, viewAngle);
- downRight.rotate(camCenter, viewAngle, viewAngle);
+ topLeft.rotate(cameraCenter, -viewAngle, -viewAngle);
+ topRight.rotate(cameraCenter, viewAngle, -viewAngle);
+ bottomLeft.rotate(cameraCenter, -viewAngle, viewAngle);
+ bottomRight.rotate(cameraCenter, viewAngle, viewAngle);
- upLeft.rotate(camCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
- upRight.rotate(camCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
- downLeft.rotate(camCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
- downRight.rotate(camCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
+ topLeft.rotate(cameraCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
+ topRight.rotate(cameraCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
+ bottomLeft.rotate(cameraCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
+ bottomRight.rotate(cameraCenter, -avatar.getAngleXZ(), -avatar.getAngleYZ());
}
}