public class BasicTransformable extends Object implements Transformable
Transformable
interface.
Classes can inherit from this in order to provide the Transformable
interface.
The implementation equals that of the original SFML implementation.Constructor and Description |
---|
BasicTransformable()
Default constructor, initializes this object with an identity transformation.
|
Modifier and Type | Method and Description |
---|---|
Transform |
getInverseTransform()
Gets the inverse of the current transformation matrix.
|
Vector2f |
getOrigin()
Gets the origin of this object.
|
Vector2f |
getPosition()
Gets the position of this object.
|
float |
getRotation()
Gets the rotation angle of this object.
|
Vector2f |
getScale()
Gets the scaling of this object.
|
Transform |
getTransform()
Gets the current transformation matrix.
|
void |
move(float x,
float y)
Moves this object.
|
void |
move(Vector2f v)
Moves the object.
|
void |
rotate(float angle)
Rotates this object around its origin.
|
void |
scale(float x,
float y)
Scales the object, using its origin as the scaling center.
|
void |
scale(Vector2f factors)
Scales the object, using its origin as the scaling center.
|
void |
setOrigin(float x,
float y)
Sets the rotation, scaling and drawing origin of this object.
|
void |
setOrigin(Vector2f v)
Sets the rotation, scaling and drawing origin of this object.
|
void |
setPosition(float x,
float y)
Sets the position of this object in the scene so that its origin will be exactly on it.
|
void |
setPosition(Vector2f v)
Sets the position of this object in the scene so that its origin will be exactly on it.
|
void |
setRotation(float angle)
Sets the rotation of this object around its origin.
|
void |
setScale(float x,
float y)
Sets the scaling of this object, using its origin as the scaling center.
|
void |
setScale(Vector2f factors)
Sets the scaling of this object, using its origin as the scaling center.
|
public BasicTransformable()
public final void setPosition(float x, float y)
Transformable
setPosition
in interface Transformable
x
- the new X coordinate.y
- the new Y coordinate.public void setPosition(Vector2f v)
Transformable
setPosition
in interface Transformable
v
- the new position.public void setRotation(float angle)
Transformable
setRotation
in interface Transformable
angle
- the new rotation angle in degrees.public final void setScale(float x, float y)
Transformable
setScale
in interface Transformable
x
- the new X scaling factor.y
- the new Y scaling factor.public void setScale(Vector2f factors)
Transformable
setScale
in interface Transformable
factors
- the new scaling factors.public final void setOrigin(float x, float y)
Transformable
setOrigin
in interface Transformable
x
- the new X coordinate of the origin.y
- the new Y coordinate of the origin.public void setOrigin(Vector2f v)
Transformable
setOrigin
in interface Transformable
v
- the new origin.public Vector2f getPosition()
Transformable
getPosition
in interface Transformable
public float getRotation()
Transformable
getRotation
in interface Transformable
public Vector2f getScale()
Transformable
getScale
in interface Transformable
public Vector2f getOrigin()
Transformable
getOrigin
in interface Transformable
public final void move(float x, float y)
Transformable
move
in interface Transformable
x
- the X offset added to the current position.y
- the Y offset added to the current position.public void move(Vector2f v)
Transformable
move
in interface Transformable
v
- the offset vector added to the current position.public void rotate(float angle)
Transformable
rotate
in interface Transformable
angle
- the rotation angle in degrees.public final void scale(float x, float y)
Transformable
scale
in interface Transformable
x
- the X scaling factor.y
- the Y scaling factor.public void scale(Vector2f factors)
Transformable
scale
in interface Transformable
factors
- the scaling factors.public Transform getTransform()
Transformable
getTransform
in interface Transformable
public Transform getInverseTransform()
Transformable
getInverseTransform
in interface Transformable