Class CellSet

  • All Implemented Interfaces:
    java.lang.Iterable<TextGrid.Cell>

    public class CellSet
    extends java.lang.Object
    implements java.lang.Iterable<TextGrid.Cell>
    Author:
    Efstathios Sideris
    • Constructor Detail

      • CellSet

        public CellSet()
      • CellSet

        public CellSet​(CellSet other)
    • Method Detail

      • iterator

        public java.util.Iterator<TextGrid.Cell> iterator()
        Specified by:
        iterator in interface java.lang.Iterable<TextGrid.Cell>
      • addAll

        public void addAll​(CellSet set)
      • size

        public int size()
      • printAsGrid

        public void printAsGrid()
      • printDebug

        public void printDebug()
      • getCellsAsString

        public java.lang.String getCellsAsString()
      • toString

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

        public static CellSet copyCellSet​(CellSet set)
        Deep copy
        Parameters:
        set -
        Returns:
      • getType

        public int getType​(TextGrid grid)
      • translate

        public void translate​(int dx,
                              int dy)
      • addSet

        public void addSet​(CellSet set)
      • hasCommonCells

        public boolean hasCommonCells​(CellSet otherSet)
      • getFilledEquivalent

        public CellSet getFilledEquivalent​(TextGrid textGrid)
      • findCellNextTo

        public TextGrid.Cell findCellNextTo​(TextGrid.Cell cell)
        Returns the first cell that is found to be next to cell.
        Parameters:
        cell -
        Returns:
      • findCellsNextTo

        public CellSet findCellsNextTo​(TextGrid.Cell cell)
        Returns all the cells that are found to be next to cell.
        Parameters:
        cell -
        Returns:
      • appendSet

        public void appendSet​(CellSet set)
      • subtractSet

        public void subtractSet​(CellSet set)
      • getWidth

        public int getWidth()
      • getHeight

        public int getHeight()
      • getMaxX

        public int getMaxX()
      • getMinX

        public int getMinX()
      • getMaxY

        public int getMaxY()
      • getMinY

        public int getMinY()
      • remove

        public java.lang.Object remove​(TextGrid.Cell cell)
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • removeDuplicateSets

        public static java.util.ArrayList removeDuplicateSets​(java.util.ArrayList list)
      • breakIntoDistinctBoundaries

        public java.util.ArrayList breakIntoDistinctBoundaries​(TextGrid grid)
        Takes into account character info from the grid
        Returns:
        ArrayList of distinct BoundarySetS
      • breakIntoDistinctBoundaries

        public java.util.ArrayList breakIntoDistinctBoundaries()
        Returns:
        ArrayList of distinct BoundarySetS
      • breakTrulyMixedBoundaries

        public java.util.ArrayList breakTrulyMixedBoundaries​(TextGrid grid)
        Breaks that:
          +-----+
          |     |
          +  ---+-------------------
          |     |
          +-----+
         
        into the following 3:
          +-----+
          |     |
          +     +
          |     |
          +-----+
         
             ---
                 -------------------
         
        Parameters:
        grid -
        Returns:
        a list of boundaries that are either open or closed but not mixed and they are equivalent to the this
      • makeIntoGrid

        public TextGrid makeIntoGrid()
      • makeScaledOneThirdEquivalent

        public CellSet makeScaledOneThirdEquivalent()