Class XYLine3DRenderer

  • All Implemented Interfaces:
    Serializable, Cloneable, EventListener, org.jfree.chart.event.AnnotationChangeListener, org.jfree.chart.LegendItemSource, org.jfree.chart.renderer.xy.XYItemRenderer, org.jfree.chart.util.PublicCloneable, Effect3D

    public class XYLine3DRenderer
    extends org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
    implements Effect3D, Serializable
    A XYLineAndShapeRenderer that adds a shadow line to the graph to emulate a 3D-effect.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer

        org.jfree.chart.renderer.xy.XYLineAndShapeRenderer.State
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static Paint DEFAULT_WALL_PAINT
      The default wall paint.
      static double DEFAULT_X_OFFSET
      The default x-offset for the 3D effect.
      static double DEFAULT_Y_OFFSET
      The default y-offset for the 3D effect.
      private static long serialVersionUID
      For serialization.
      private Paint wallPaint
      The paint used to shade the left and lower 3D wall.
      private double xOffset
      The size of x-offset for the 3D effect.
      private double yOffset
      The size of y-offset for the 3D effect.
      • Fields inherited from class org.jfree.chart.renderer.AbstractRenderer

        DEFAULT_OUTLINE_PAINT, DEFAULT_OUTLINE_STROKE, DEFAULT_PAINT, DEFAULT_SHAPE, DEFAULT_STROKE, DEFAULT_VALUE_LABEL_FONT, DEFAULT_VALUE_LABEL_PAINT, ZERO
    • Constructor Summary

      Constructors 
      Constructor Description
      XYLine3DRenderer()
      Creates a new renderer.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void drawFirstPassShape​(Graphics2D g2, int pass, int series, int item, Shape shape)
      Overrides the method in the subclass to draw a shadow in the first pass.
      boolean equals​(Object obj)
      Tests this renderer for equality with an arbitrary object.
      int getPassCount()
      Returns the number of passes through the data that the renderer requires in order to draw the chart.
      Paint getWallPaint()
      Returns the paint used to highlight the left and bottom wall in the plot background.
      double getXOffset()
      Returns the x-offset for the 3D effect.
      double getYOffset()
      Returns the y-offset for the 3D effect.
      protected boolean isItemPass​(int pass)
      Returns true if the specified pass involves drawing items.
      protected boolean isLinePass​(int pass)
      Returns true if the specified pass involves drawing lines.
      protected boolean isShadowPass​(int pass)
      Returns true if the specified pass involves drawing shadows.
      private void readObject​(ObjectInputStream stream)
      Provides serialization support.
      void setWallPaint​(Paint paint)
      Sets the paint used to hightlight the left and bottom walls in the plot background and sends a RendererChangeEvent to all registered listeners.
      void setXOffset​(double xOffset)
      Sets the x-offset and sends a RendererChangeEvent to all registered listeners.
      void setYOffset​(double yOffset)
      Sets the y-offset and sends a RendererChangeEvent to all registered listeners.
      private void writeObject​(ObjectOutputStream stream)
      Provides serialization support.
      • Methods inherited from class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer

        clone, drawItem, drawPrimaryLine, drawPrimaryLineAsPath, drawSecondaryPass, getDefaultLinesVisible, getDefaultShapesFilled, getDefaultShapesVisible, getDrawOutlines, getDrawSeriesLineAsPath, getItemLineVisible, getItemShapeFilled, getItemShapeVisible, getLegendItem, getLegendLine, getSeriesLinesVisible, getSeriesShapesFilled, getSeriesShapesVisible, getUseFillPaint, getUseOutlinePaint, initialise, setDefaultLinesVisible, setDefaultShapesFilled, setDefaultShapesVisible, setDrawOutlines, setDrawSeriesLineAsPath, setLegendLine, setSeriesLinesVisible, setSeriesLinesVisible, setSeriesShapesFilled, setSeriesShapesFilled, setSeriesShapesVisible, setSeriesShapesVisible, setUseFillPaint, setUseOutlinePaint
      • Methods inherited from class org.jfree.chart.renderer.xy.AbstractXYItemRenderer

        addAnnotation, addAnnotation, addEntity, annotationChanged, beginElementGroup, calculateDomainMarkerTextAnchorPoint, drawAnnotations, drawDomainLine, drawDomainMarker, drawItemLabel, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, findDomainBounds, findRangeBounds, findRangeBounds, getAnnotations, getDefaultItemLabelGenerator, getDefaultToolTipGenerator, getDrawingSupplier, getItemLabelGenerator, getLegendItemLabelGenerator, getLegendItems, getLegendItemToolTipGenerator, getLegendItemURLGenerator, getPlot, getSeriesItemLabelGenerator, getSeriesToolTipGenerator, getToolTipGenerator, getURLGenerator, lineTo, moveTo, removeAnnotation, removeAnnotations, setDefaultItemLabelGenerator, setDefaultToolTipGenerator, setLegendItemLabelGenerator, setLegendItemToolTipGenerator, setLegendItemURLGenerator, setPlot, setSeriesItemLabelGenerator, setSeriesToolTipGenerator, setURLGenerator, updateCrosshairValues
      • Methods inherited from class org.jfree.chart.renderer.AbstractRenderer

        addChangeListener, beginElementGroup, calculateLabelAnchorPoint, clearSeriesPaints, clearSeriesStrokes, endElementGroup, fireChangeEvent, getAutoPopulateSeriesFillPaint, getAutoPopulateSeriesOutlinePaint, getAutoPopulateSeriesOutlineStroke, getAutoPopulateSeriesPaint, getAutoPopulateSeriesShape, getAutoPopulateSeriesStroke, getDataBoundsIncludesVisibleSeriesOnly, getDefaultCreateEntities, getDefaultEntityRadius, getDefaultFillPaint, getDefaultItemLabelFont, getDefaultItemLabelPaint, getDefaultItemLabelsVisible, getDefaultLegendShape, getDefaultLegendTextFont, getDefaultLegendTextPaint, getDefaultNegativeItemLabelPosition, getDefaultOutlinePaint, getDefaultOutlineStroke, getDefaultPaint, getDefaultPositiveItemLabelPosition, getDefaultSeriesVisible, getDefaultSeriesVisibleInLegend, getDefaultShape, getDefaultStroke, getItemCreateEntity, getItemFillPaint, getItemLabelAnchorOffset, getItemLabelFont, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendShape, getLegendTextFont, getLegendTextPaint, getNegativeItemLabelPosition, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesVisible, getSeriesVisibleInLegend, getTreatLegendShapeAsLine, hashCode, hasListener, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, lookupLegendShape, lookupLegendTextFont, lookupLegendTextPaint, lookupSeriesFillPaint, lookupSeriesOutlinePaint, lookupSeriesOutlineStroke, lookupSeriesPaint, lookupSeriesShape, lookupSeriesStroke, notifyListeners, removeChangeListener, setAutoPopulateSeriesFillPaint, setAutoPopulateSeriesOutlinePaint, setAutoPopulateSeriesOutlineStroke, setAutoPopulateSeriesPaint, setAutoPopulateSeriesShape, setAutoPopulateSeriesStroke, setDataBoundsIncludesVisibleSeriesOnly, setDefaultCreateEntities, setDefaultCreateEntities, setDefaultEntityRadius, setDefaultFillPaint, setDefaultFillPaint, setDefaultItemLabelFont, setDefaultItemLabelFont, setDefaultItemLabelPaint, setDefaultItemLabelPaint, setDefaultItemLabelsVisible, setDefaultItemLabelsVisible, setDefaultLegendShape, setDefaultLegendTextFont, setDefaultLegendTextPaint, setDefaultNegativeItemLabelPosition, setDefaultNegativeItemLabelPosition, setDefaultOutlinePaint, setDefaultOutlinePaint, setDefaultOutlineStroke, setDefaultOutlineStroke, setDefaultPaint, setDefaultPaint, setDefaultPositiveItemLabelPosition, setDefaultPositiveItemLabelPosition, setDefaultSeriesVisible, setDefaultSeriesVisible, setDefaultSeriesVisibleInLegend, setDefaultSeriesVisibleInLegend, setDefaultShape, setDefaultShape, setDefaultStroke, setDefaultStroke, setItemLabelAnchorOffset, setLegendShape, setLegendTextFont, setLegendTextPaint, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelFont, setSeriesItemLabelPaint, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setTreatLegendShapeAsLine
      • Methods inherited from interface org.jfree.chart.LegendItemSource

        getLegendItems
      • Methods inherited from interface org.jfree.chart.renderer.xy.XYItemRenderer

        addAnnotation, addAnnotation, addChangeListener, drawAnnotations, drawDomainLine, drawDomainMarker, drawRangeLine, drawRangeMarker, fillDomainGridBand, fillRangeGridBand, findDomainBounds, findRangeBounds, getDefaultCreateEntities, getDefaultFillPaint, getDefaultItemLabelFont, getDefaultItemLabelGenerator, getDefaultItemLabelPaint, getDefaultItemLabelsVisible, getDefaultNegativeItemLabelPosition, getDefaultOutlinePaint, getDefaultOutlineStroke, getDefaultPaint, getDefaultPositiveItemLabelPosition, getDefaultSeriesVisible, getDefaultSeriesVisibleInLegend, getDefaultShape, getDefaultStroke, getDefaultToolTipGenerator, getItemCreateEntity, getItemFillPaint, getItemLabelFont, getItemLabelGenerator, getItemLabelPaint, getItemOutlinePaint, getItemOutlineStroke, getItemPaint, getItemShape, getItemStroke, getItemVisible, getLegendItemLabelGenerator, getNegativeItemLabelPosition, getPlot, getPositiveItemLabelPosition, getSeriesCreateEntities, getSeriesFillPaint, getSeriesItemLabelFont, getSeriesItemLabelGenerator, getSeriesItemLabelPaint, getSeriesNegativeItemLabelPosition, getSeriesOutlinePaint, getSeriesOutlineStroke, getSeriesPaint, getSeriesPositiveItemLabelPosition, getSeriesShape, getSeriesStroke, getSeriesToolTipGenerator, getSeriesVisible, getSeriesVisibleInLegend, getToolTipGenerator, getURLGenerator, isItemLabelVisible, isSeriesItemLabelsVisible, isSeriesVisible, isSeriesVisibleInLegend, removeAnnotation, removeAnnotations, removeChangeListener, setDefaultCreateEntities, setDefaultCreateEntities, setDefaultFillPaint, setDefaultFillPaint, setDefaultItemLabelFont, setDefaultItemLabelGenerator, setDefaultItemLabelPaint, setDefaultItemLabelsVisible, setDefaultItemLabelsVisible, setDefaultNegativeItemLabelPosition, setDefaultNegativeItemLabelPosition, setDefaultOutlinePaint, setDefaultOutlinePaint, setDefaultOutlineStroke, setDefaultOutlineStroke, setDefaultPaint, setDefaultPaint, setDefaultPositiveItemLabelPosition, setDefaultPositiveItemLabelPosition, setDefaultSeriesVisible, setDefaultSeriesVisible, setDefaultSeriesVisibleInLegend, setDefaultSeriesVisibleInLegend, setDefaultShape, setDefaultShape, setDefaultStroke, setDefaultStroke, setDefaultToolTipGenerator, setLegendItemLabelGenerator, setPlot, setSeriesCreateEntities, setSeriesCreateEntities, setSeriesFillPaint, setSeriesFillPaint, setSeriesItemLabelFont, setSeriesItemLabelGenerator, setSeriesItemLabelPaint, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesItemLabelsVisible, setSeriesNegativeItemLabelPosition, setSeriesNegativeItemLabelPosition, setSeriesOutlinePaint, setSeriesOutlinePaint, setSeriesOutlineStroke, setSeriesOutlineStroke, setSeriesPaint, setSeriesPaint, setSeriesPositiveItemLabelPosition, setSeriesPositiveItemLabelPosition, setSeriesShape, setSeriesShape, setSeriesStroke, setSeriesStroke, setSeriesToolTipGenerator, setSeriesVisible, setSeriesVisible, setSeriesVisibleInLegend, setSeriesVisibleInLegend, setURLGenerator
    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • DEFAULT_X_OFFSET

        public static final double DEFAULT_X_OFFSET
        The default x-offset for the 3D effect.
        See Also:
        Constant Field Values
      • DEFAULT_Y_OFFSET

        public static final double DEFAULT_Y_OFFSET
        The default y-offset for the 3D effect.
        See Also:
        Constant Field Values
      • DEFAULT_WALL_PAINT

        public static final Paint DEFAULT_WALL_PAINT
        The default wall paint.
      • xOffset

        private double xOffset
        The size of x-offset for the 3D effect.
      • yOffset

        private double yOffset
        The size of y-offset for the 3D effect.
      • wallPaint

        private transient Paint wallPaint
        The paint used to shade the left and lower 3D wall.
    • Constructor Detail

      • XYLine3DRenderer

        public XYLine3DRenderer()
        Creates a new renderer.
    • Method Detail

      • getXOffset

        public double getXOffset()
        Returns the x-offset for the 3D effect.
        Specified by:
        getXOffset in interface Effect3D
        Returns:
        The 3D effect.
      • getYOffset

        public double getYOffset()
        Returns the y-offset for the 3D effect.
        Specified by:
        getYOffset in interface Effect3D
        Returns:
        The 3D effect.
      • setXOffset

        public void setXOffset​(double xOffset)
        Sets the x-offset and sends a RendererChangeEvent to all registered listeners.
        Parameters:
        xOffset - the x-offset.
      • setYOffset

        public void setYOffset​(double yOffset)
        Sets the y-offset and sends a RendererChangeEvent to all registered listeners.
        Parameters:
        yOffset - the y-offset.
      • getWallPaint

        public Paint getWallPaint()
        Returns the paint used to highlight the left and bottom wall in the plot background.
        Returns:
        The paint.
      • setWallPaint

        public void setWallPaint​(Paint paint)
        Sets the paint used to hightlight the left and bottom walls in the plot background and sends a RendererChangeEvent to all registered listeners.
        Parameters:
        paint - the paint.
      • getPassCount

        public int getPassCount()
        Returns the number of passes through the data that the renderer requires in order to draw the chart. Most charts will require a single pass, but some require two passes.
        Specified by:
        getPassCount in interface org.jfree.chart.renderer.xy.XYItemRenderer
        Overrides:
        getPassCount in class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
        Returns:
        The pass count.
      • isLinePass

        protected boolean isLinePass​(int pass)
        Returns true if the specified pass involves drawing lines.
        Overrides:
        isLinePass in class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
        Parameters:
        pass - the pass.
        Returns:
        A boolean.
      • isItemPass

        protected boolean isItemPass​(int pass)
        Returns true if the specified pass involves drawing items.
        Overrides:
        isItemPass in class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
        Parameters:
        pass - the pass.
        Returns:
        A boolean.
      • isShadowPass

        protected boolean isShadowPass​(int pass)
        Returns true if the specified pass involves drawing shadows.
        Parameters:
        pass - the pass.
        Returns:
        A boolean.
      • drawFirstPassShape

        protected void drawFirstPassShape​(Graphics2D g2,
                                          int pass,
                                          int series,
                                          int item,
                                          Shape shape)
        Overrides the method in the subclass to draw a shadow in the first pass.
        Overrides:
        drawFirstPassShape in class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
        Parameters:
        g2 - the graphics device.
        pass - the pass.
        series - the series index (zero-based).
        item - the item index (zero-based).
        shape - the shape.
      • equals

        public boolean equals​(Object obj)
        Tests this renderer for equality with an arbitrary object.
        Overrides:
        equals in class org.jfree.chart.renderer.xy.XYLineAndShapeRenderer
        Parameters:
        obj - the object (null permitted).
        Returns:
        A boolean.
      • writeObject

        private void writeObject​(ObjectOutputStream stream)
                          throws IOException
        Provides serialization support.
        Parameters:
        stream - the output stream.
        Throws:
        IOException - if there is an I/O error.