本文整理汇总了Java中org.andengine.util.adt.transformation.Transformation.setToIdentity方法的典型用法代码示例。如果您正苦于以下问题:Java Transformation.setToIdentity方法的具体用法?Java Transformation.setToIdentity怎么用?Java Transformation.setToIdentity使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.andengine.util.adt.transformation.Transformation
的用法示例。
在下文中一共展示了Transformation.setToIdentity方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getLocalToParentTransformation
import org.andengine.util.adt.transformation.Transformation; //导入方法依赖的package包/类
@Override
public Transformation getLocalToParentTransformation() {
if (this.mLocalToParentTransformation == null) {
this.mLocalToParentTransformation = new Transformation();
}
final Transformation localToParentTransformation = this.mLocalToParentTransformation;
if (this.mLocalToParentTransformationDirty) {
localToParentTransformation.setToIdentity();
/* Scale. */
final float scaleX = this.mScaleX;
final float scaleY = this.mScaleY;
if ((scaleX != 1) || (scaleY != 1)) {
final float scaleCenterX = this.mLocalScaleCenterX;
final float scaleCenterY = this.mLocalScaleCenterY;
/* TODO Check if it is worth to check for scaleCenterX == 0 && scaleCenterY == 0 as the two postTranslate can be saved.
* The same obviously applies for all similar occurrences of this pattern in this class. */
localToParentTransformation.postTranslate(-scaleCenterX, -scaleCenterY);
localToParentTransformation.postScale(scaleX, scaleY);
localToParentTransformation.postTranslate(scaleCenterX, scaleCenterY);
}
/* Skew. */
final float skewX = this.mSkewX;
final float skewY = this.mSkewY;
if ((skewX != 0) || (skewY != 0)) {
final float skewCenterX = this.mLocalSkewCenterX;
final float skewCenterY = this.mLocalSkewCenterY;
localToParentTransformation.postTranslate(-skewCenterX, -skewCenterY);
localToParentTransformation.postSkew(skewX, skewY);
localToParentTransformation.postTranslate(skewCenterX, skewCenterY);
}
/* Rotation. */
final float rotation = this.mRotation;
if (rotation != 0) {
final float rotationCenterX = this.mLocalRotationCenterX;
final float rotationCenterY = this.mLocalRotationCenterY;
localToParentTransformation.postTranslate(-rotationCenterX, -rotationCenterY);
localToParentTransformation.postRotate(-rotation);
localToParentTransformation.postTranslate(rotationCenterX, rotationCenterY);
}
/* Translation. */
localToParentTransformation.postTranslate(this.mX, this.mY);
/* Offset. */
localToParentTransformation.postTranslate(-this.mLocalOffsetCenterX, -this.mLocalOffsetCenterY);
this.mLocalToParentTransformationDirty = false;
}
return localToParentTransformation;
}
示例2: getParentToLocalTransformation
import org.andengine.util.adt.transformation.Transformation; //导入方法依赖的package包/类
@Override
public Transformation getParentToLocalTransformation() {
if (this.mParentToLocalTransformation == null) {
this.mParentToLocalTransformation = new Transformation();
}
final Transformation parentToLocalTransformation = this.mParentToLocalTransformation;
if (this.mParentToLocalTransformationDirty) {
parentToLocalTransformation.setToIdentity();
/* Offset. */
parentToLocalTransformation.postTranslate(this.mLocalOffsetCenterX, this.mLocalOffsetCenterY);
/* Translation. */
parentToLocalTransformation.postTranslate(-this.mX, -this.mY);
/* Rotation. */
final float rotation = this.mRotation;
if (rotation != 0) {
final float localRotationCenterX = this.mLocalRotationCenterX;
final float localRotationCenterY = this.mLocalRotationCenterY;
parentToLocalTransformation.postTranslate(-localRotationCenterX, -localRotationCenterY);
parentToLocalTransformation.postRotate(rotation);
parentToLocalTransformation.postTranslate(localRotationCenterX, localRotationCenterY);
}
/* Skew. */
final float skewX = this.mSkewX;
final float skewY = this.mSkewY;
if ((skewX != 0) || (skewY != 0)) {
final float localSkewCenterX = this.mLocalSkewCenterX;
final float localSkewCenterY = this.mLocalSkewCenterY;
parentToLocalTransformation.postTranslate(-localSkewCenterX, -localSkewCenterY);
parentToLocalTransformation.postSkew(-skewX, -skewY);
parentToLocalTransformation.postTranslate(localSkewCenterX, localSkewCenterY);
}
/* Scale. */
final float scaleX = this.mScaleX;
final float scaleY = this.mScaleY;
if ((scaleX != 1) || (scaleY != 1)) {
final float localScaleCenterX = this.mLocalScaleCenterX;
final float localScaleCenterY = this.mLocalScaleCenterY;
parentToLocalTransformation.postTranslate(-localScaleCenterX, -localScaleCenterY);
parentToLocalTransformation.postScale(1 / scaleX, 1 / scaleY); // TODO Division could be replaced by a multiplication of 'scale(X/Y)Inverse'...
parentToLocalTransformation.postTranslate(localScaleCenterX, localScaleCenterY);
}
this.mParentToLocalTransformationDirty = false;
}
return parentToLocalTransformation;
}
示例3: getLocalToParentTransformation
import org.andengine.util.adt.transformation.Transformation; //导入方法依赖的package包/类
@Override
public Transformation getLocalToParentTransformation() {
if(this.mLocalToParentTransformation == null) {
this.mLocalToParentTransformation = new Transformation();
}
final Transformation localToParentTransformation = this.mLocalToParentTransformation;
if(this.mLocalToParentTransformationDirty) {
localToParentTransformation.setToIdentity();
/* Scale. */
final float scaleX = this.mScaleX;
final float scaleY = this.mScaleY;
if((scaleX != 1) || (scaleY != 1)) {
final float scaleCenterX = this.mScaleCenterX;
final float scaleCenterY = this.mScaleCenterY;
/* TODO Check if it is worth to check for scaleCenterX == 0 && scaleCenterY == 0 as the two postTranslate can be saved.
* The same obviously applies for all similar occurrences of this pattern in this class. */
localToParentTransformation.postTranslate(-scaleCenterX, -scaleCenterY);
localToParentTransformation.postScale(scaleX, scaleY);
localToParentTransformation.postTranslate(scaleCenterX, scaleCenterY);
}
/* Skew. */
final float skewX = this.mSkewX;
final float skewY = this.mSkewY;
if((skewX != 0) || (skewY != 0)) {
final float skewCenterX = this.mSkewCenterX;
final float skewCenterY = this.mSkewCenterY;
localToParentTransformation.postTranslate(-skewCenterX, -skewCenterY);
localToParentTransformation.postSkew(skewX, skewY);
localToParentTransformation.postTranslate(skewCenterX, skewCenterY);
}
/* Rotation. */
final float rotation = this.mRotation;
if(rotation != 0) {
final float rotationCenterX = this.mRotationCenterX;
final float rotationCenterY = this.mRotationCenterY;
localToParentTransformation.postTranslate(-rotationCenterX, -rotationCenterY);
localToParentTransformation.postRotate(rotation);
localToParentTransformation.postTranslate(rotationCenterX, rotationCenterY);
}
/* Translation. */
localToParentTransformation.postTranslate(this.mX, this.mY);
this.mLocalToParentTransformationDirty = false;
}
return localToParentTransformation;
}
示例4: getParentToLocalTransformation
import org.andengine.util.adt.transformation.Transformation; //导入方法依赖的package包/类
@Override
public Transformation getParentToLocalTransformation() {
if(this.mParentToLocalTransformation == null) {
this.mParentToLocalTransformation = new Transformation();
}
final Transformation parentToLocalTransformation = this.mParentToLocalTransformation;
if(this.mParentToLocalTransformationDirty) {
parentToLocalTransformation.setToIdentity();
/* Translation. */
parentToLocalTransformation.postTranslate(-this.mX, -this.mY);
/* Rotation. */
final float rotation = this.mRotation;
if(rotation != 0) {
final float rotationCenterX = this.mRotationCenterX;
final float rotationCenterY = this.mRotationCenterY;
parentToLocalTransformation.postTranslate(-rotationCenterX, -rotationCenterY);
parentToLocalTransformation.postRotate(-rotation);
parentToLocalTransformation.postTranslate(rotationCenterX, rotationCenterY);
}
/* Skew. */
final float skewX = this.mSkewX;
final float skewY = this.mSkewY;
if((skewX != 0) || (skewY != 0)) {
final float skewCenterX = this.mSkewCenterX;
final float skewCenterY = this.mSkewCenterY;
parentToLocalTransformation.postTranslate(-skewCenterX, -skewCenterY);
parentToLocalTransformation.postSkew(-skewX, -skewY);
parentToLocalTransformation.postTranslate(skewCenterX, skewCenterY);
}
/* Scale. */
final float scaleX = this.mScaleX;
final float scaleY = this.mScaleY;
if((scaleX != 1) || (scaleY != 1)) {
final float scaleCenterX = this.mScaleCenterX;
final float scaleCenterY = this.mScaleCenterY;
parentToLocalTransformation.postTranslate(-scaleCenterX, -scaleCenterY);
parentToLocalTransformation.postScale(1 / scaleX, 1 / scaleY); // TODO Division could be replaced by a multiplication of 'scale(X/Y)Inverse'...
parentToLocalTransformation.postTranslate(scaleCenterX, scaleCenterY);
}
this.mParentToLocalTransformationDirty = false;
}
return parentToLocalTransformation;
}