Package net.sourceforge.chart2d

# Class PieChart2D

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
net.sourceforge.chart2d.Object2D
net.sourceforge.chart2d.Chart2D
net.sourceforge.chart2d.PieChart2D

All Implemented Interfaces:
  `ImageObserver`, `MenuContainer`, `Serializable`

public final class PieChart2D extends Chart2D
A PieChart2D object is an enclosed are with a title, pie sectors, pie labels, and a legend. Changes through its set methods are updated upon next repaint() or getImage() calls.

See Also:
  - Serialized Form

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class javax.swing.JComponent

  `JComponent.AccessibleJComponent`

  ## Nested classes/interfaces inherited from class java.awt.Container

  `Container.AccessibleAWTContainer`

  ## Nested classes/interfaces inherited from class java.awt.Component

  `Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy`

- ## Field Summary

  ### Fields inherited from class net.sourceforge.chart2d.Object2D

  `MAX_SIZE_DEFAULT, MIN_SIZE_DEFAULT`

  ### Fields inherited from class javax.swing.JComponent

  `listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

  ### Fields inherited from class java.awt.Component

  `accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

  ### Fields inherited from interface java.awt.image.ImageObserver

  `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PieChart2D()`
  Creates a PieChart2D object with its defaults.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final Dataset`
  `getDataset()`
  Gets the Dataset for this PieChart2D.
  `final BufferedImage`
  `getImage()`
  Gets a buffered image of the chart.
  `final MultiColorsProperties`
  `getMultiColorsProperties()`
  Gets the MultiColorsProperties for this PieChart2D.
  `final PieChart2DProperties`
  `getPieChart2DProperties()`
  Gets the PieChart2DProperties for this PieChart2D.
  `final Dimension`
  `getPreferredSize()`
  Gets the preferred size of the chart.
  `final void`
  `pack()`
  Causes the object to reinintialize to it's preferred size.
  `final void`
  `paintComponent(Graphics g)`
  Paints the chart.
  `final void`
  `setDataset(Dataset d)`
  Sets the Dataset for this PieChart2D.
  `final void`
  `setLayoutRatios(float pieInfoW)`
  Sets the allocation of space to each component of a pie chart.
  `final void`
  `setMultiColorsProperties(MultiColorsProperties props)`
  Sets the MultiColorsProperties for this PieChart2D.
  `final void`
  `setPieChart2DProperties(PieChart2DProperties props)`
  Sets the PieChart2DProperties for this PieChart2D.
  `final void`
  `setPreferredSize(Dimension size)`
  Sets a custom preferred size for the chart.
  `final boolean`
  `validate(boolean debug)`
  Validates the properties of this object.

  ### Methods inherited from class net.sourceforge.chart2d.Chart2D

  `getChart2DProperties, getLegendProperties, setChart2DProperties, setLegendProperties`

  ### Methods inherited from class net.sourceforge.chart2d.Object2D

  `getObject2DProperties, setMaximumSize, setMinimumSize, setObject2DProperties`

  ### Methods inherited from class javax.swing.JComponent

  `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setNextFocusableComponent, setOpaque, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI`

  ### Methods inherited from class java.awt.Container

  `add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree`

  ### Methods inherited from class java.awt.Component

  `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAccessibleContext, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

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

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

- ## Constructor Details

  - ### PieChart2D

    public PieChart2D()
    Creates a PieChart2D object with its defaults.

- ## Method Details

  - ### setPieChart2DProperties

    public final void setPieChart2DProperties(PieChart2DProperties props)
    Sets the PieChart2DProperties for this PieChart2D.
    Parameters:
      `props` - The PieChart2DProperties.

  - ### setDataset

    public final void setDataset(Dataset d)
    Sets the Dataset for this PieChart2D. Pie datasets are expected to be non-negative. If any value is negative, then validate(...) will return false. Rendering still clamps negative values to zero as a defensive fallback and prints a short note to System.out.
    Parameters:
      `d` - The Dataset.

  - ### setMultiColorsProperties

    public final void setMultiColorsProperties(MultiColorsProperties props)
    Sets the MultiColorsProperties for this PieChart2D.
    Parameters:
      `props` - The MultiColorsProperties.

  - ### setLayoutRatios

    public final void setLayoutRatios(float pieInfoW)
    Sets the allocation of space to each component of a pie chart. There are three components: pieInfo and legend. The pieInfoW needs to be within 0f and 1f. The legendW will be 1f - pieInfoW. Both the pieInfoW and the legendH will be 1f.
    Parameters:
      `pieInfoW` - The ratio of pieInfo width to total.

  - ### setPreferredSize

    public final void setPreferredSize(Dimension size)
    Sets a custom preferred size for the chart. This custom size will override the preferred size calculations that normally occurr. If null is passed, the preferred size calculations will be reinstated.
    Specified by:
      `setPreferredSize` in class `Object2D`
    Parameters:
      `size` - The custom preferred size for this chart.

  - ### getPieChart2DProperties

    public final PieChart2DProperties getPieChart2DProperties()
    Gets the PieChart2DProperties for this PieChart2D.
    Returns:
      The PieChart2DProperties.

  - ### getDataset

    public final Dataset getDataset()
    Gets the Dataset for this PieChart2D.
    Returns:
      The Dataset.

  - ### getMultiColorsProperties

    public final MultiColorsProperties getMultiColorsProperties()
    Gets the MultiColorsProperties for this PieChart2D.
    Returns:
      The MultiColorsProperties.

  - ### getImage

    public final BufferedImage getImage()
    Gets a buffered image of the chart.
    Specified by:
      `getImage` in class `Object2D`
    Returns:
      An image of this chart

  - ### getPreferredSize

    public final Dimension getPreferredSize()
    Gets the preferred size of the chart. The preferred size is within the maximum and minimum sizes of the chart. Much calculation is performed when calling this method.
    Specified by:
      `getPreferredSize` in class `Object2D`
    Returns:
      The preferred minimum size of the chart.

  - ### pack

    public final void pack()
    Causes the object to reinintialize to it's preferred size.
    Specified by:
      `pack` in class `Object2D`

  - ### validate

    public final boolean validate(boolean debug)
    Validates the properties of this object. If debug is true then prints a messages indicating whether each property is valid. Pie datasets containing negative values are considered invalid even though rendering defensively clamps those values to zero. Returns true if all the properties were valid and false otherwise.
    Specified by:
      `validate` in class `Object2D`
    Parameters:
      `debug` - If true then will print status messages.
    Returns:
      If true then valid.

  - ### paintComponent

    public final void paintComponent(Graphics g)
    Paints the chart. This is provided for the layout manager to call.
    Overrides:
      `paintComponent` in class `JComponent`
    Parameters:
      `g` - The graphics context for calculations and painting.