MovingObject

A supertype for objects that have a mutable position and a velocity in two-dimensional space.

trait HasPos
class Object
trait Matchable
class Any

Value members

Concrete methods

Causes the object’s pos to change: the object moves from its current location at its current velocity for one unit of time. That is, the dx and dy components of the velocity are added to the object’s pos.

Causes the object’s pos to change: the object moves from its current location at its current velocity for one unit of time. That is, the dx and dy components of the velocity are added to the object’s pos.

def moveWithin(container: HasEdges): Unit

Causes the object’s pos to change: the object moves from its current location at its current velocity for one unit of time (as per moveAlong) and is then immediately clamped to fit within the bounds of the given object (as per Pos.clamp).

Causes the object’s pos to change: the object moves from its current location at its current velocity for one unit of time (as per moveAlong) and is then immediately clamped to fit within the bounds of the given object (as per Pos.clamp).

Inherited methods

def distance(another: HasPos): Double

Determines the distance (“as the crow flies”) between this object’s pos and that of the given object.

Determines the distance (“as the crow flies”) between this object’s pos and that of the given object.

Inherited from:
HasPos
def isBoundFor(direction: Direction): Boolean

Determines whether this object is bound for roughly the given direction, as per Direction.sharesQuadrant.

Determines whether this object is bound for roughly the given direction, as per Direction.sharesQuadrant.

Inherited from:
HasVelocity

Determines whether this object has a downward velocity, as per Direction.isDownward.

Determines whether this object has a downward velocity, as per Direction.isDownward.

Inherited from:
HasVelocity

Determines whether this object has a leftward velocity, as per Direction.isLeftward.

Determines whether this object has a leftward velocity, as per Direction.isLeftward.

Inherited from:
HasVelocity

Determines whether this object has a rightward velocity, as per Direction.isRightward.

Determines whether this object has a rightward velocity, as per Direction.isRightward.

Inherited from:
HasVelocity

Determines whether this object has an upward velocity, as per Direction.isUpward.

Determines whether this object has an upward velocity, as per Direction.isUpward.

Inherited from:
HasVelocity

Returns the Pos that this object, moving from its current location at its current velocity, reaches in one unit of time. That is, adds the dx and dy components of the velocity to the current Pos and returns the result.

Returns the Pos that this object, moving from its current location at its current velocity, reaches in one unit of time. That is, adds the dx and dy components of the velocity to the current Pos and returns the result.

Inherited from:
HasVelocity

the object’s velocity

the object’s velocity

Inherited from:
HasVelocity

Inherited fields

var pos: Pos

the object’s location

the object’s location

Inherited from:
MutablePos