Bläddra i källkod

setPosition method.

NathanSweet 11 år sedan
förälder
incheckning
6606ca1e4b

+ 15 - 0
spine-libgdx/src/com/esotericsoftware/spine/Bone.java

@@ -138,6 +138,11 @@ public class Bone {
 		this.y = y;
 	}
 
+	public void setPosition (float x, float y) {
+		this.x = x;
+		this.y = y;
+	}
+
 	public float getRotation () {
 		return rotation;
 	}
@@ -162,6 +167,16 @@ public class Bone {
 		this.scaleY = scaleY;
 	}
 
+	public void setScale (float scaleX, float scaleY) {
+		this.scaleX = scaleX;
+		this.scaleY = scaleY;
+	}
+
+	public void setScale (float scale) {
+		scaleX = scale;
+		scaleY = scale;
+	}
+
 	public float getM00 () {
 		return m00;
 	}

+ 5 - 0
spine-libgdx/src/com/esotericsoftware/spine/Skeleton.java

@@ -296,6 +296,11 @@ public class Skeleton {
 		this.y = y;
 	}
 
+	public void setPosition (float x, float y) {
+		this.x = x;
+		this.y = y;
+	}
+
 	public float getTime () {
 		return time;
 	}

+ 3 - 6
spine-libgdx/src/com/esotericsoftware/spine/SkeletonRenderer.java

@@ -91,8 +91,7 @@ public class SkeletonRenderer {
 				float oldScaleX = rootBone.getScaleX();
 				float oldScaleY = rootBone.getScaleY();
 				float oldRotation = rootBone.getRotation();
-				attachmentSkeleton.setX(skeleton.getX() + bone.getWorldX());
-				attachmentSkeleton.setY(skeleton.getY() + bone.getWorldY());
+				attachmentSkeleton.setPosition(skeleton.getX() + bone.getWorldX(), skeleton.getY() + bone.getWorldY());
 				rootBone.setScaleX(1 + bone.getWorldScaleX() - oldScaleX);
 				rootBone.setScaleY(1 + bone.getWorldScaleY() - oldScaleY);
 				rootBone.setRotation(oldRotation + bone.getWorldRotation());
@@ -100,8 +99,7 @@ public class SkeletonRenderer {
 
 				draw(batch, attachmentSkeleton);
 
-				attachmentSkeleton.setX(0);
-				attachmentSkeleton.setY(0);
+				attachmentSkeleton.setPosition(0, 0);
 				rootBone.setScaleX(oldScaleX);
 				rootBone.setScaleY(oldScaleY);
 				rootBone.setRotation(oldRotation);
@@ -153,8 +151,7 @@ public class SkeletonRenderer {
 				float oldScaleX = rootBone.getScaleX();
 				float oldScaleY = rootBone.getScaleY();
 				float oldRotation = rootBone.getRotation();
-				attachmentSkeleton.setX(skeleton.getX() + bone.getWorldX());
-				attachmentSkeleton.setY(skeleton.getY() + bone.getWorldY());
+				attachmentSkeleton.setPosition(skeleton.getX() + bone.getWorldX(), skeleton.getY() + bone.getWorldY());
 				rootBone.setScaleX(1 + bone.getWorldScaleX() - oldScaleX);
 				rootBone.setScaleY(1 + bone.getWorldScaleY() - oldScaleY);
 				rootBone.setRotation(oldRotation + bone.getWorldRotation());

+ 1 - 2
spine-libgdx/test/com/esotericsoftware/spine/MixTest.java

@@ -75,8 +75,7 @@ public class MixTest extends ApplicationAdapter {
 
 		skeleton = new Skeleton(skeletonData);
 		skeleton.updateWorldTransform();
-		skeleton.setX(-50);
-		skeleton.setY(20);
+		skeleton.setPosition(-50, 20);
 	}
 
 	public void render () {

+ 1 - 2
spine-libgdx/test/com/esotericsoftware/spine/NormalMapTest.java

@@ -111,8 +111,7 @@ public class NormalMapTest extends ApplicationAdapter {
 			}
 
 			public boolean touchDragged (int screenX, int screenY, int pointer) {
-				skeleton.setX(screenX);
-				skeleton.setY(Gdx.graphics.getHeight() - screenY);
+				skeleton.setPosition(screenX, Gdx.graphics.getHeight() - screenY);
 				return true;
 			}
 

+ 1 - 2
spine-libgdx/test/com/esotericsoftware/spine/SimpleTest1.java

@@ -63,8 +63,7 @@ public class SimpleTest1 extends ApplicationAdapter {
 		SkeletonData skeletonData = json.readSkeletonData(Gdx.files.internal("spineboy/spineboy.json"));
 
 		skeleton = new Skeleton(skeletonData); // Skeleton holds skeleton state (bone positions, slot attachments, etc).
-		skeleton.setX(250);
-		skeleton.setY(20);
+		skeleton.setPosition(250, 20);
 
 		AnimationStateData stateData = new AnimationStateData(skeletonData); // Defines mixing (crossfading) between animations.
 		stateData.setMix("run", "jump", 0.2f);

+ 1 - 2
spine-libgdx/test/com/esotericsoftware/spine/SimpleTest2.java

@@ -68,8 +68,7 @@ public class SimpleTest2 extends ApplicationAdapter {
 		SkeletonData skeletonData = json.readSkeletonData(Gdx.files.internal("spineboy/spineboy.json"));
 
 		skeleton = new Skeleton(skeletonData); // Skeleton holds skeleton state (bone positions, slot attachments, etc).
-		skeleton.setX(250);
-		skeleton.setY(20);
+		skeleton.setPosition(250, 20);
 		skeleton.setAttachment("head-bb", "head"); // Attach "head" bounding box to "head-bb" slot.
 
 		bounds = new SkeletonBounds(); // Convenience class to do hit detection with bounding boxes.

+ 1 - 2
spine-libgdx/test/com/esotericsoftware/spine/SkeletonAttachmentTest.java

@@ -61,8 +61,7 @@ public class SkeletonAttachmentTest extends ApplicationAdapter {
 			json.setScale(0.6f);
 			SkeletonData skeletonData = json.readSkeletonData(Gdx.files.internal("spineboy/spineboy.json"));
 			spineboy = new Skeleton(skeletonData);
-			spineboy.setX(320);
-			spineboy.setY(20);
+			spineboy.setPosition(320, 20);
 
 			AnimationStateData stateData = new AnimationStateData(skeletonData);
 			stateData.setMix("walk", "jump", 0.2f);

+ 2 - 4
spine-libgdx/test/com/esotericsoftware/spine/SkeletonTest.java

@@ -204,10 +204,8 @@ public class SkeletonTest extends ApplicationAdapter {
 				state.update(delta);
 				state.apply(skeleton);
 			}
-			skeleton.setX(skeletonX);
-			skeleton.setY(skeletonY);
-			// skeleton.setX(0);
-			// skeleton.setY(0);
+			skeleton.setPosition(skeletonX, skeletonY);
+			// skeleton.setPosition(0, 0);
 			// skeleton.getRootBone().setX(skeletonX);
 			// skeleton.getRootBone().setY(skeletonY);
 			skeleton.setFlipX(ui.flipXCheckbox.isChecked());