com.orsoncharts

## Class ChartBox3D.ChartBoxFace

- java.lang.Object
- - com.orsoncharts.graphics3d.Face
  - - com.orsoncharts.ChartBox3D.ChartBoxFace

- Enclosing class:
    ChartBox3D

      public static final class ChartBox3D.ChartBoxFace
      extends Face

  A special subclass of `Face` that is used by the `ChartBox3D` so that when faces are sorted by z-order, the chart box sides are always drawn first (furthest in the background). Also, these faces track tick marks, values and anchor points.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ChartBoxFace(Object3D owner, int[] vertices)` Creates a new face for a `ChartBox3D`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addXMarker(MarkerData marker)` Adds marker data for the x-dimension.
    `void` | `addXTicks(TickData a, TickData b)` Adds tick data for edges A and B.
    `void` | `addYMarker(MarkerData marker)` Adds marker data for the y-dimension.
    `void` | `addYTicks(TickData a, TickData b)` Adds tick data items for the y-axis.
    `void` | `addZMarker(MarkerData marker)` Adds marker data for the z-dimension.
    `void` | `addZTicks(TickData a, TickData b)` Adds tick data items for the z-axis.
    `float` | `calculateAverageZValue(Point3D[] points)` Returns `-123456f` which ensures that the chart box face is always drawn first (before any data items).
    `void` | `clearXTicks()` Clears the ticks for the x-axis.
    `java.util.List<MarkerData>` | `getXMarkers()` Returns a list of marker data for the x-dimension (the list is not modifiable).
    `java.util.List<TickData>` | `getXTicksA()` Returns the x-axis tick data for edge A.
    `java.util.List<TickData>` | `getXTicksB()` Returns the x-axis tick data for the edge B.
    `java.util.List<MarkerData>` | `getYMarkers()` Returns a list of marker data for the y-dimension (the list is not modifiable).
    `java.util.List<TickData>` | `getYTicksA()` Returns the y-axis tick data for the edge A.
    `java.util.List<TickData>` | `getYTicksB()` Returns the y-axis tick data for the edge B.
    `java.util.List<MarkerData>` | `getZMarkers()` Returns a list of marker data for the z-dimension (the list is not modifiable).
    `java.util.List<TickData>` | `getZTicksA()` Returns the z-axis tick data for the edge A.
    `java.util.List<TickData>` | `getZTicksB()` Returns the z-axis tick data for the edge B.

    - ### Methods inherited from class com.orsoncharts.graphics3d.Face

      `calculateNormal, createPath, getColor, getOffset, getOutline, getOwner, getTag, getVertexCount, getVertexIndex, isFrontFacing, setOffset, toString`

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

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

- - ### Constructor Detail

    - #### ChartBoxFace

          public ChartBoxFace(Object3D owner,
                              int[] vertices)

      Creates a new face for a `ChartBox3D`.
      Parameters:
        `owner` - the object that the new face belongs to (`null` not permitted).
        `vertices` - the indices of the vertices.
      Since:
        1.3

  - ### Method Detail

    - #### clearXTicks

          public void clearXTicks()

      Clears the ticks for the x-axis.

    - #### getXTicksA

          public java.util.List<TickData> getXTicksA()

      Returns the x-axis tick data for edge A.
      Returns:
        The x-axis tick data for edge A.

    - #### addXTicks

          public void addXTicks(TickData a,
                                TickData b)

      Adds tick data for edges A and B.
      Parameters:
        `a` - data for a tick on edge A.
        `b` - data for a tick on edge B.

    - #### getXTicksB

          public java.util.List<TickData> getXTicksB()

      Returns the x-axis tick data for the edge B.
      Returns:
        The x-axis tick data for the edge B.

    - #### addYTicks

          public void addYTicks(TickData a,
                                TickData b)

      Adds tick data items for the y-axis.
      Parameters:
        `a` - data for a tick on edge A.
        `b` - data for a tick on edge B.

    - #### getYTicksA

          public java.util.List<TickData> getYTicksA()

      Returns the y-axis tick data for the edge A.
      Returns:
        The y-axis tick data for the edge A.

    - #### getYTicksB

          public java.util.List<TickData> getYTicksB()

      Returns the y-axis tick data for the edge B.
      Returns:
        The y-axis tick data for the edge B.

    - #### addZTicks

          public void addZTicks(TickData a,
                                TickData b)

      Adds tick data items for the z-axis.
      Parameters:
        `a` - data for a tick on edge A.
        `b` - data for a tick on edge B.

    - #### getZTicksA

          public java.util.List<TickData> getZTicksA()

      Returns the z-axis tick data for the edge A.
      Returns:
        The z-axis tick data for the edge A.

    - #### getZTicksB

          public java.util.List<TickData> getZTicksB()

      Returns the z-axis tick data for the edge B.
      Returns:
        The z-axis tick data for the edge B.

    - #### addXMarker

          public void addXMarker(MarkerData marker)

      Adds marker data for the x-dimension.
      Parameters:
        `marker` - the marker data (`null` not permitted).

    - #### getXMarkers

          public java.util.List<MarkerData> getXMarkers()

      Returns a list of marker data for the x-dimension (the list is not modifiable).
      Returns:
        The markers (never `null`).

    - #### addYMarker

          public void addYMarker(MarkerData marker)

      Adds marker data for the y-dimension.
      Parameters:
        `marker` - the marker data (`null` not permitted).

    - #### getYMarkers

          public java.util.List<MarkerData> getYMarkers()

      Returns a list of marker data for the y-dimension (the list is not modifiable).
      Returns:
        The markers (never `null`).

    - #### addZMarker

          public void addZMarker(MarkerData marker)

      Adds marker data for the z-dimension.
      Parameters:
        `marker` - the marker data (`null` not permitted).

    - #### getZMarkers

          public java.util.List<MarkerData> getZMarkers()

      Returns a list of marker data for the z-dimension (the list is not modifiable).
      Returns:
        The markers (never `null`).

    - #### calculateAverageZValue

          public float calculateAverageZValue(Point3D[] points)

      Returns `-123456f` which ensures that the chart box face is always drawn first (before any data items).
      Overrides:
        `calculateAverageZValue` in class `Face`
      Parameters:
        `points` - the points (ignored here).
      Returns:
        `-123456f`.