@Override public void resetCameraOrientation() { super.resetCameraOrientation(); mEmpty.setOrientation(Quaternion.getIdentity()); getViewMatrix(); }
public Object3D clone(boolean copyMaterial, boolean cloneChildren) { final Object3D clone = new Object3D(); cloneTo(clone, copyMaterial); clone.setOrientation(mOrientation); clone.setScale(getScale()); if (cloneChildren) { int childCount = this.getNumChildren(); for (int i = 0; i < childCount; i++) { clone.addChild(this.getChildAt(i).clone(copyMaterial, cloneChildren)); } } return clone; }
private void applyRotation() { if (mIsRotating) { mapToSphere((float) mPrevScreenCoord.getX(), (float) mPrevScreenCoord.getY(), mPrevSphereCoord); mapToSphere((float) mCurrScreenCoord.getX(), (float) mCurrScreenCoord.getY(), mCurrSphereCoord); Vector3 rotationAxis = mPrevSphereCoord.clone(); rotationAxis.cross(mCurrSphereCoord); rotationAxis.normalize(); double rotationAngle = Math.acos(Math.min(1, mPrevSphereCoord.dot(mCurrSphereCoord))); mCurrentOrientation.fromAngleAxis(rotationAxis, MathUtil.radiansToDegrees(rotationAngle)); mCurrentOrientation.normalize(); Quaternion q = new Quaternion(mStartOrientation); q.multiply(mCurrentOrientation); mEmpty.setOrientation(q); } }
mGeometry.setOrientation(new Quaternion().fromMatrix(matrix));
public Object3D clone(boolean copyMaterial, boolean cloneChildren) { final Object3D clone = new Object3D(); cloneTo(clone, copyMaterial); clone.setOrientation(mOrientation); clone.setScale(getScale()); if (cloneChildren) { int childCount = this.getNumChildren(); for (int i = 0; i < childCount; i++) { clone.addChild(this.getChildAt(i).clone(copyMaterial, cloneChildren)); } } return clone; }
private void applyRotation() { if (mIsRotating) { mapToSphere((float) mPrevScreenCoord.getX(), (float) mPrevScreenCoord.getY(), mPrevSphereCoord); mapToSphere((float) mCurrScreenCoord.getX(), (float) mCurrScreenCoord.getY(), mCurrSphereCoord); Vector3 rotationAxis = mPrevSphereCoord.clone(); rotationAxis.cross(mCurrSphereCoord); rotationAxis.normalize(); double rotationAngle = Math.acos(Math.min(1, mPrevSphereCoord.dot(mCurrSphereCoord))); mCurrentOrientation.fromAngleAxis(rotationAxis, MathUtil.radiansToDegrees(rotationAngle)); mCurrentOrientation.normalize(); Quaternion q = new Quaternion(mStartOrientation); q.multiply(mCurrentOrientation); mEmpty.setOrientation(q); } }
mGeometry.setOrientation(new Quaternion().fromMatrix(matrix));