public class CollisionCircle extends Circle implements CollisionArea, PositionChangeListener<CollisionCircle>, SizeChangeListener<CollisionCircle>
Circle
that allows for interpolation. Game
objects can use this class to move around the game world and retrieve the
appropriate rendering coordinates during the render phase.Modifier and Type | Field and Description |
---|---|
protected Collisions |
collisions |
disposed, positionChangeListeners, sizeChangeListeners
Constructor and Description |
---|
CollisionCircle(float radius) |
CollisionCircle(float centerX,
float centerY,
float radius) |
CollisionCircle(int id,
Collisions collisions) |
CollisionCircle(int id,
float radius) |
CollisionCircle(int id,
float centerX,
float centerY,
float radius) |
Modifier and Type | Method and Description |
---|---|
<T extends Positionable> |
addPostionChangeListener(PositionChangeListener<T> listener)
Adds a
Positionable to be notified of coordinate
changes |
<T extends Sizeable> |
addSizeChangeListener(SizeChangeListener<T> listener)
Adds a
SizeChangeListener to be notified of size changes |
protected void |
clearPositionChangeListeners() |
protected void |
clearSizeChangeListeners() |
void |
dispose()
|
boolean |
equals(java.lang.Object o) |
void |
forceTo(float x,
float y)
Sets the current x and y coordinate to the specified x and y and force updates the
rendering position to match
|
void |
forceTo(float x,
float y,
float width,
float height)
Sets the current x, y, width and height and force updates the
rendering state to match
|
void |
forceToHeight(float height)
Sets the current height to the specified height and force updates the
rendering bounds to match
|
void |
forceToWidth(float width)
Sets the current width to the specified width and force updates the
rendering bounds to match
|
int |
getId()
Returns the unique id of this object
|
float |
getRawRenderHeight()
Returns the raw float value used for the render height coordinate
|
float |
getRawRenderRadius() |
float |
getRawRenderWidth()
Returns the raw float value used for the render width coordinate
|
float |
getRawRenderX()
Returns the raw float value used for the render x coordinate
|
float |
getRawRenderY()
Returns the raw float value used for the render y coordinate
|
RenderCoordMode |
getRenderCoordMode()
Returns the mode used for calculating render coordinates
|
int |
getRenderHeight()
Returns the render height of this object using the set
RenderCoordMode |
int |
getRenderRadius() |
int |
getRenderWidth()
Returns the render width of this object using the set
RenderCoordMode |
int |
getRenderX()
Returns the render x coordinate of this object using the set
RenderCoordMode |
int |
getRenderY()
Returns the render y coordinate of this object using the set
RenderCoordMode |
int |
hashCode() |
protected void |
init(int id,
float centerX,
float centerY,
float radius) |
void |
interpolate(float alpha)
Called during interpolate phase each interpolate()
|
protected void |
notifyPositionChangeListeners() |
protected void |
notifySizeChangeListeners() |
void |
positionChanged(CollisionCircle moved) |
void |
preUpdate()
Called at the start of each update() before any changes are made to this object
|
protected void |
release() |
<T extends Positionable> |
removePositionChangeListener(PositionChangeListener<T> listener)
Removes a
PositionChangeListener to stop it being notified of
coordinate changes |
<T extends Sizeable> |
removeSizeChangeListener(SizeChangeListener<T> listener)
Removes a
SizeChangeListener to stop it being notified of size
changes |
void |
setRenderCoordMode(RenderCoordMode mode)
Sets the mode used for calculating render coordinates
|
CollisionArea |
setTo(float x,
float y,
float width,
float height)
Sets the current x, y, width and height
|
void |
sizeChanged(CollisionCircle changed) |
java.lang.String |
toString() |
contains, contains, contains, contains, contains, contains, copy, draw, edgeIterator, fill, getBoundingBox, getCenterX, getCenterY, getDistanceFromCenter, getDistanceFromCenter, getDistanceTo, getHeight, getMaxX, getMaxY, getMinX, getMinY, getNumberOfSides, getPolygon, getRadius, getRotation, getWidth, getX, getY, intersects, intersects, intersects, intersectsLineSegment, intersectsLineSegment, isCircle, lerp, lerp, lerp, rotate, rotateAround, scale, set, setCenter, setCenterX, setCenterY, setRadius, setRotation, setRotationAround, setX, setXY, setY, translate
add, clearPositionListeners, clearPositionListeners, clearSizeListeners, clearSizeListeners, getDistanceTo, intersects, moveTowards, moveTowards, notifyPositionListeners, notifyPositionListeners, notifySizeListeners, notifySizeListeners, removePositionListener, removePositionListener, removeSizeListener, removeSizeListener, setDisposed, setRotationAround, subtract
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
contains, contains, contains, getCenterX, getCenterY, getHeight, getMaxX, getMaxY, getMinX, getMinY, getNumberOfSides, getPolygon, getWidth, intersects, intersects, intersectsLineSegment, intersectsLineSegment, isCircle, scale, setCenter, setCenterX, setCenterY, setRadius
getDistanceTo, getDistanceTo, getX, getY, moveTowards, moveTowards, setX, setXY, setY
protected Collisions collisions
public CollisionCircle(float radius)
public CollisionCircle(int id, float radius)
public CollisionCircle(float centerX, float centerY, float radius)
public CollisionCircle(int id, float centerX, float centerY, float radius)
public CollisionCircle(int id, Collisions collisions)
protected void init(int id, float centerX, float centerY, float radius)
protected void release()
public void dispose()
Shape
dispose
in interface CollisionObject
dispose
in interface org.mini2Dx.gdx.utils.Disposable
dispose
in class Circle
public void preUpdate()
CollisionObject
preUpdate
in interface CollisionObject
preUpdate
in interface Interpolatable
public void interpolate(float alpha)
CollisionObject
interpolate
in interface CollisionObject
interpolate
in interface Interpolatable
alpha
- The alpha value between 0.0 and 1.0public CollisionArea setTo(float x, float y, float width, float height)
CollisionArea
setTo
in interface CollisionArea
x
- The x coordinate to sety
- The y coordinate to setwidth
- The width to setheight
- The height to setpublic void forceTo(float x, float y, float width, float height)
CollisionArea
forceTo
in interface CollisionArea
x
- The x coordinate to sety
- The y coordinate to setwidth
- The width to setheight
- The height to setpublic void forceToWidth(float width)
CollisionArea
forceToWidth
in interface CollisionArea
width
- The width to setpublic void forceToHeight(float height)
CollisionArea
forceToHeight
in interface CollisionArea
height
- The height to setpublic void forceTo(float x, float y)
CollisionObject
forceTo
in interface CollisionObject
x
- The x coordinate to sety
- The y coordinate to setpublic int getId()
CollisionObject
getId
in interface CollisionObject
public int getRenderX()
CollisionObject
RenderCoordMode
getRenderX
in interface CollisionObject
public int getRenderY()
CollisionObject
RenderCoordMode
getRenderY
in interface CollisionObject
public float getRawRenderX()
CollisionObject
getRawRenderX
in interface CollisionObject
public float getRawRenderY()
CollisionObject
getRawRenderY
in interface CollisionObject
public RenderCoordMode getRenderCoordMode()
CollisionObject
getRenderCoordMode
in interface CollisionObject
RenderCoordMode.GLOBAL_DEFAULT
public void setRenderCoordMode(RenderCoordMode mode)
CollisionObject
setRenderCoordMode
in interface CollisionObject
mode
- The RenderCoordMode
valuepublic int getRenderWidth()
CollisionArea
RenderCoordMode
getRenderWidth
in interface CollisionArea
public int getRenderHeight()
CollisionArea
RenderCoordMode
getRenderHeight
in interface CollisionArea
public float getRawRenderWidth()
CollisionArea
getRawRenderWidth
in interface CollisionArea
public float getRawRenderHeight()
CollisionArea
getRawRenderHeight
in interface CollisionArea
public int getRenderRadius()
public float getRawRenderRadius()
public void positionChanged(CollisionCircle moved)
positionChanged
in interface PositionChangeListener<CollisionCircle>
public void sizeChanged(CollisionCircle changed)
sizeChanged
in interface SizeChangeListener<CollisionCircle>
public <T extends Positionable> void addPostionChangeListener(PositionChangeListener<T> listener)
Positionable
Positionable
to be notified of coordinate
changesaddPostionChangeListener
in interface Positionable
addPostionChangeListener
in class Shape
listener
- The PositionChangeListener
to addPositionable.addPostionChangeListener(PositionChangeListener)
public <T extends Positionable> void removePositionChangeListener(PositionChangeListener<T> listener)
Positionable
PositionChangeListener
to stop it being notified of
coordinate changesremovePositionChangeListener
in interface Positionable
removePositionChangeListener
in class Shape
listener
- The PositionChangeListener
to removePositionable.removePositionChangeListener(PositionChangeListener)
public <T extends Sizeable> void addSizeChangeListener(SizeChangeListener<T> listener)
Sizeable
SizeChangeListener
to be notified of size changesaddSizeChangeListener
in interface Sizeable
addSizeChangeListener
in class Shape
listener
- The SizeChangeListener
to addpublic <T extends Sizeable> void removeSizeChangeListener(SizeChangeListener<T> listener)
Sizeable
SizeChangeListener
to stop it being notified of size
changesremoveSizeChangeListener
in interface Sizeable
removeSizeChangeListener
in class Shape
listener
- The SizeChangeListener
to removeprotected void notifyPositionChangeListeners()
notifyPositionChangeListeners
in class Shape
protected void clearPositionChangeListeners()
clearPositionChangeListeners
in class Shape
protected void notifySizeChangeListeners()
notifySizeChangeListeners
in class Shape
protected void clearSizeChangeListeners()
clearSizeChangeListeners
in class Shape
public java.lang.String toString()
toString
in class java.lang.Object