com.orsoncharts.renderer

## Interface Renderer3D

- All Superinterfaces:
    ChartElement
  All Known Subinterfaces:
    CategoryRenderer3D, XYZRenderer
  All Known Implementing Classes:
    AbstractCategoryRenderer3D, AbstractRenderer3D, AbstractXYZRenderer, AreaRenderer3D, BarRenderer3D, BarXYZRenderer, LineRenderer3D, LineXYZRenderer, ScatterXYZRenderer, StackedBarRenderer3D, SurfaceRenderer

      public interface Renderer3D
      extends ChartElement

  A renderer is an object responsible for constructing objects in a 3D model that correspond to data items in a dataset. The renderer's methods will be called by the plot (`CategoryPlot3D` or `XYZPlot`) that it is assigned to.

  All renderers support a change listener mechanism so that registered listeners can be notified whenever any attribute of the renderer is modified. Typically the plot that the renderer is assigned to will listen for change events, and pass these events along to the `Chart3D` object.

  Renderers should implement the `java.io.Serializable` interface, so that charts can be serialized and deserialized, but this is not a forced requirement (if you never use serialization, it won't matter if you implement a renderer that does not support it).

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.awt.Color` | `TRANSPARENT_COLOR` A color instance that is completely transparent.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addChangeListener(Renderer3DChangeListener listener)` Registers a listener to receive notification of changes to the renderer.
    `void` | `removeChangeListener(Renderer3DChangeListener listener)` Deregisters a listener so that it no longer receives notification of changes to the renderer.

    - ### Methods inherited from interface com.orsoncharts.ChartElement

      `receive`

- - ### Field Detail

    - #### TRANSPARENT_COLOR

          static final java.awt.Color TRANSPARENT_COLOR

      A color instance that is completely transparent.
      Since:
        1.3

  - ### Method Detail

    - #### addChangeListener

          void addChangeListener(Renderer3DChangeListener listener)

      Registers a listener to receive notification of changes to the renderer.
      Parameters:
        `listener` - the listener (`null` not permitted).

    - #### removeChangeListener

          void removeChangeListener(Renderer3DChangeListener listener)

      Deregisters a listener so that it no longer receives notification of changes to the renderer.
      Parameters:
        `listener` - the listener (`null` not permitted).