Class Corner

  • All Implemented Interfaces:
    java.lang.Comparable

    public class Corner
    extends java.lang.Object
    implements java.lang.Comparable
    Describes the corners of a 3-dimensional cube.
    Since:
    22 Nov 2005
    Author:
    Mark Taylor
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int COUNT
      Number of corners in a cube (8).
      static Corner ORIGIN
      The origin.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compareTo​(java.lang.Object other)
      Defines some arbitrary but consistent ordering of corners.
      boolean equals​(java.lang.Object other)  
      Corner[] getAdjacent()
      Returns an array of the three corners which are adjacent to this one (connected by a cube edge).
      static Corner getCorner​(int index)
      Factory method giving one of the cube corners.
      boolean[] getFlags()
      Returns an array of boolean flags; the i'th flag indicates whether the i'th coordinate is low or high (zero or one for a unit cube).
      int hashCode()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • Field Detail

      • ORIGIN

        public static final Corner ORIGIN
        The origin.
    • Method Detail

      • getAdjacent

        public Corner[] getAdjacent()
        Returns an array of the three corners which are adjacent to this one (connected by a cube edge).
        Returns:
        3-element corner array
      • getFlags

        public boolean[] getFlags()
        Returns an array of boolean flags; the i'th flag indicates whether the i'th coordinate is low or high (zero or one for a unit cube).
        Returns:
        three element array of booleans describing coordinates of this corner
      • getCorner

        public static Corner getCorner​(int index)
        Factory method giving one of the cube corners. The index determines which corner you get.
        Parameters:
        index - corner ID; 0 <= index < 8
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • compareTo

        public int compareTo​(java.lang.Object other)
        Defines some arbitrary but consistent ordering of corners.
        Specified by:
        compareTo in interface java.lang.Comparable