trait IntCubeLike extends HyperCube[ThreeDim] with QueryShape[BigInt, ThreeDim]
A three dimensional cube.
Wikipedia: "Usually, the octant with all three positive coordinates is referred to as the first octant. There is no generally used naming convention for the other seven octants."
However the article suggests (given that we count from zero): - 0 (binary 000) - top-front-left - 1 (binary 001) - top-back-right - 2 (binary 010) - top-back-left - 3 (binary 011) - top-front-left - 4 (binary 100) - bottom-front-left - 5 (binary 101) - bottom-back-left - 6 (binary 110) - bottom-back-right - 7 (binary 111) - bottom-front-right
Obviously there is no clear connection between the orientation and the binary representation. We thus prefer to chose the the octants numbering in a binary fashion, assigning bit 0 to the x-axis, bit 1 to the y-axis, and bit 2 to the z-axis, where top-front-left is 000, hence:
- 0 (binary 000) - left-top-front - 1 (binary 001) - right-top-front - 2 (binary 010) - left-bottom-front - 3 (binary 011) - right-bottom-front - 4 (binary 100) - left-top-back - 5 (binary 101) - right-top-back - 6 (binary 110) - left-bottom-back - 7 (binary 111) - right-bottom-back
- Alphabetic
- By Inheritance
- IntCubeLike
- QueryShape
- HyperCube
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def area: BigInt
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def back: Int
- final def bottom: Int
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
contains(cube: IntSpace.ThreeDim.HyperCube): Boolean
Checks whether a given hyper-cube is fully contained in this hyper-cube.
Checks whether a given hyper-cube is fully contained in this hyper-cube. This is also the case if their bounds full match.
- Definition Classes
- IntCubeLike → HyperCube
-
final
def
contains(point: IntSpace.ThreeDim.PointLike): Boolean
Queries the overlap of this shape with a given
IntPoint2D p.Queries the overlap of this shape with a given
IntPoint2D p. The point is considered to have a side length of 1!- returns
trueif this shape contains or partly overlaps the given point
- Definition Classes
- IntCubeLike → QueryShape → HyperCube
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- final def front: Int
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
greatestInteresting(a: IntSpace.ThreeDim.HyperCube, b: IntSpace.ThreeDim.PointLike): IntSpace.ThreeDim.HyperCube
Calculates the greatest interesting hyper-cube inside this hyper-cube which contains both hyper-cube
aand pointb, and they occupy distinct orthants.Calculates the greatest interesting hyper-cube inside this hyper-cube which contains both hyper-cube
aand pointb, and they occupy distinct orthants.- Definition Classes
- IntCubeLike → HyperCube
-
final
def
greatestInteresting(a: IntSpace.ThreeDim.PointLike, b: IntSpace.ThreeDim.PointLike): IntSpace.ThreeDim.HyperCube
Calculates the greatest interesting hyper-cube inside this hyper-cube which contains both points
aandb, and they occupy distinct orthants.Calculates the greatest interesting hyper-cube inside this hyper-cube which contains both points
aandb, and they occupy distinct orthants.- Definition Classes
- IntCubeLike → HyperCube
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
indexOf(b: IntSpace.ThreeDim.HyperCube): Int
Determines the orthant index of another internal hyper-cube
inner.Determines the orthant index of another internal hyper-cube
inner.- returns
the index of the orthant (beginning at 0), or -1 if
innerlies outside of this hyper-cube.
- Definition Classes
- IntCubeLike → HyperCube
-
final
def
indexOf(a: IntSpace.ThreeDim.PointLike): Int
Determines the orthant index of a point
point.Determines the orthant index of a point
point.- returns
the index of the orthant (beginning at 0), or -1 if
pointlies outside of this hyper-cube.
- Definition Classes
- IntCubeLike → HyperCube
-
final
def
isAreaGreater(a: IntSpace.ThreeDim.HyperCube, b: BigInt): Boolean
- Definition Classes
- IntCubeLike → QueryShape
-
final
def
isAreaNonEmpty(area: BigInt): Boolean
- Definition Classes
- IntCubeLike → QueryShape
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def left: Int
-
final
def
maxDistance(point: IntSpace.ThreeDim.PointLike): Double
Calculates the maximum distance to a point in the euclidean metric.
Calculates the maximum distance to a point in the euclidean metric. This calls
maxDistanceSqand then takes the square root.- Definition Classes
- IntCubeLike → HyperCube
-
final
def
maxDistanceSq(point: IntSpace.ThreeDim.PointLike): BigInt
Calculates the maximum squared euclidean distance to a point in the euclidean metric.
Calculates the maximum squared euclidean distance to a point in the euclidean metric. This is the distance (squared) to the corner which is the furthest from the
point, no matter if it lies within the hyper-cube or not. -
final
def
minDistance(point: IntSpace.ThreeDim.PointLike): Double
Calculates the minimum distance to a point in the euclidean metric.
Calculates the minimum distance to a point in the euclidean metric. This calls
minDistanceSqand then takes the square root.- Definition Classes
- IntCubeLike → HyperCube
-
final
def
minDistanceSq(point: IntSpace.ThreeDim.PointLike): BigInt
The squared (euclidean) distance of the closest of the cube's corners or sides to the point, if the point is outside the cube, or zero, if the point is contained
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
orthant(idx: Int): IntSpace.ThreeDim.HyperCube
- Definition Classes
- IntCubeLike → HyperCube
-
final
def
overlapArea(b: IntSpace.ThreeDim.HyperCube): BigInt
- Definition Classes
- IntCubeLike → QueryShape
- final def right: Int
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
- final def top: Int
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )