# GomokuBoard
declaration: class: GomokuBoard

# Class GomokuBoard

java.lang.Object
GomokuBoard

public class GomokuBoard extends Object

## Field Summary

Fields
Modifier and Type
Field
Description
`private int`
`boardHeight`
The height of the GomokuBoard.
`private int`
`boardWidth`
The width of the GomokuBoard.
`private GomokuCell`
`firstCell`
The firstcell in the board, at the top left of the board.

## Constructor Summary

Constructors
Constructor
Description
`GomokuBoard(int width, int height)`
This constructor take the width and the height to creat a board of gomoku.
`GomokuBoard(int width, int height, Color[][] colors)`
This constructor take the width and the height to creat a board of gomoku.

## Method Summary

Modifier and Type
Method
Description
`Map<Cardinal,Integer>`
`countAlignedCells(GomokuCell cell)`
This method return a Map of number aligned cells.
`int`
`countMax(Map<Cardinal,Integer> mapColor)`
This method return the number max of the aligned Cells.
`private void`
`genCells(int width, int height, Color[][] colors)`
This method gen all cells in the board and link each other.
`GomokuCell`
`get(int x, int y)`
This method get a cell in specific position in the board.
`private GomokuCell[][]`
`getAllsCells()`
This method return all cells in the board in the order.
`List<GomokuCell>`
`getPlayableCells()`
This method return a list of playable cell.
`static void`
`main(String[] args)`
`String`
`toString()`
This method print the board cell by cell with change line when the line is finished.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### firstCell

private GomokuCell firstCell
The firstcell in the board, at the top left of the board.

### boardWidth

private int boardWidth
The width of the GomokuBoard.

### boardHeight

private int boardHeight
The height of the GomokuBoard.

## Constructor Details

### GomokuBoard

public GomokuBoard(int width, int height)
This constructor take the width and the height to creat a board of gomoku.

Parameters:
  `width` - Size of width.
  `height` - Size of height.

### GomokuBoard

public GomokuBoard(int width, int height, Color[][] colors)
This constructor take the width and the height to creat a board of gomoku.

Parameters:
  `width` - Size of width.
  `height` - Size of height.
  `colors` - Is colors of cells after load a game.

## Method Details

### main

public static void main(String[] args)

### genCells

private void genCells(int width, int height, Color[][] colors)
This method gen all cells in the board and link each other.

Parameters:
  `width` - Size of width.
  `height` - Size of height.
  `colors` - Array of Color.

### get

public GomokuCell get(int x, int y)
This method get a cell in specific position in the board.

Parameters:
  `x` - The position x on the board.
  `y` - The position y on the board.
Returns:
  GomokuCell in the position.

### getAllsCells

private GomokuCell[][] getAllsCells()
This method return all cells in the board in the order.

Returns:
  All cells with a array 2D.

### getPlayableCells

public List<GomokuCell> getPlayableCells()
This method return a list of playable cell.

Returns:
  List of GomokuCell wich all is playable.

### countAlignedCells

public Map<Cardinal,Integer> countAlignedCells(GomokuCell cell)
This method return a Map of number aligned cells.

Parameters:
  `cell` - A cell.
Returns:
  Map of number aligned cells.

### countMax

public int countMax(Map<Cardinal,Integer> mapColor)
This method return the number max of the aligned Cells.

Parameters:
  `mapColor` - A map of number aligned cells.
Returns:
  int, the number max of the aligned Cells.

### toString

public String toString()
This method print the board cell by cell with change line when the line is finished.

Overrides:
  `toString` in class `Object`