GridPos
An object of type GridPos represents a pair of integer coordinates. Such a pair can
be used to reference a point on a Grid.
The coordinate axes are named x and y. In this coordinate system, x increases
“eastwards” and y` increases “southwards”.
GridPos objects are immutable.
This class has an alias in the top-level package o1, so it’s accessible to students
simply via import o1.*.
- Value parameters:
- x
an x coordinate
- y
a y coordinate
Value members
Concrete methods
Determines whether this grid position equals the given one. This is the case if the two have identical x and y coordinates.
Determines whether this grid position equals the given one. This is the case if the two have identical x and y coordinates.
Returns the “grid distance” between this GridPos and the given one.
The grid distance between a and b equals a.xDiff(b).abs + a.yDiff(b).abs.
Returns the “grid distance” between this GridPos and the given one.
The grid distance between a and b equals a.xDiff(b).abs + a.yDiff(b).abs.
Returns a grid position that “neighbors” this one in the given direction.
For instance, if this position has an x of 10 and a y of 20, and the direction
parameter is given the value CompassDir.South, then the result has an x of 10
and a y of 21. Calling this method is essentially the same as calling relative
with a distance of one.
Returns a grid position that “neighbors” this one in the given direction.
For instance, if this position has an x of 10 and a y of 20, and the direction
parameter is given the value CompassDir.South, then the result has an x of 10
and a y of 21. Calling this method is essentially the same as calling relative
with a distance of one.
Returns an infinite lazy-list of locations at increasing distances from this GridPos
in the given direction. For example, if this GridPos is (10,1), and the direction
is South, returns a list of (10,2), (10,3), (10,4), etc.
Returns an infinite lazy-list of locations at increasing distances from this GridPos
in the given direction. For example, if this GridPos is (10,1), and the direction
is South, returns a list of (10,2), (10,3), (10,4), etc.
Returns another grid position that is in the given direction from this one and at a given distance.
Returns another grid position that is in the given direction from this one and at a given distance.
For instance, say this position has an x of 10 and a y of 20. If direction is
CompassDir.North and distance is 3, then the result has an x of 10 and a y of 17.
- See also:
Returns a textual description of this position. The description is of the form "(x,y)".
Returns a textual description of this position. The description is of the form "(x,y)".
- Definition Classes
Returns the difference between the x coordinate of this GridPos and that of the given
GridPos. The result is negative if the x coordinate of this GridPos is greater.
Returns the difference between the x coordinate of this GridPos and that of the given
GridPos. The result is negative if the x coordinate of this GridPos is greater.
Determines if the given GridPos is west or east of this one. Returns East if this
GridPos’s x coordinate is less than another’s and West if the opposite is true.
Wraps that return value in an Option; None means that the x coordinates are equal.
Determines if the given GridPos is west or east of this one. Returns East if this
GridPos’s x coordinate is less than another’s and West if the opposite is true.
Wraps that return value in an Option; None means that the x coordinates are equal.
Returns the difference between the y coordinate of this GridPos and that of the given
GridPos. The result is negative if the y coordinate of this GridPos is greater.
Returns the difference between the y coordinate of this GridPos and that of the given
GridPos. The result is negative if the y coordinate of this GridPos is greater.
Determines if the given GridPos is north or south of this one. Returns South if this
GridPos’s y coordinate is less than another’s and North if the opposite is true.
Wraps that direction in an Option; None means that the y coordinates are equal.
Determines if the given GridPos is north or south of this one. Returns South if this
GridPos’s y coordinate is less than another’s and North if the opposite is true.
Wraps that direction in an Option; None means that the y coordinates are equal.
