com.ijchart.xychart.render.noaxis
Class PieRender

java.lang.Object
  extended by com.ijchart.xychart.render.AbstractRender
      extended by com.ijchart.xychart.render.noaxis.AbstractNoAxisRender
          extended by com.ijchart.xychart.render.noaxis.PieRender
All Implemented Interfaces:
IDatasetChangeListener, INoAxisRender, IRender, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class PieRender
extends AbstractNoAxisRender
implements INoAxisRender, java.lang.Cloneable, java.io.Serializable

Title: IJChart

Description: a chart library for the Java(tm) platform.

绘制饼图.

Copyright: Copyright (c) 2013

Company:

Version:
1.0
Author:
zhang feng min,shanghai china. Contract me by email.
See Also:
Serialized Form

Field Summary
static double DEFAULT_DEPTH_3D
          缺省的绘制3D效果的深度.
static boolean DEFAULT_DRAW_AS_RING
          是否显示为圆环图的缺省值.
static double DEFAULT_INTERIOR_GAP
          缺省的内部的空白(百分比).
static boolean DEFAULT_IS_CIRCLE
          缺省是否强制饼图为圆形.
static java.awt.Paint DEFAULT_LABEL_BACKGROUND_PAINT
          缺省的标签的背景paint.
static double DEFAULT_LABEL_GAP
          缺省的标签离render边框的距离(百分比).
static boolean DEFAULT_LABEL_IN_PIE
          缺省标签是否在饼图内部.
static double DEFAULT_LABEL_LINK_MARGIN
          缺省的连接线的空白.
static java.awt.Paint DEFAULT_LABEL_LINK_PAINT
          缺省绘制连接线的paint.
static java.awt.Stroke DEFAULT_LABEL_LINK_STROKE
          缺省绘制连接线的stroke.
static boolean DEFAULT_LABEL_LINKS_VISIBLE
          缺省是否显示标签和饼图之间的连接线.
static java.awt.Paint DEFAULT_LABEL_OUTLINE_PAINT
          绘制标签的边框paint.
static java.awt.Stroke DEFAULT_LABEL_OUTLINE_STROKE
          缺省的绘制边框的stroke.
static RectangleInsets DEFAULT_LABEL_PADDING
          缺省标签的补白.
static java.awt.Paint DEFAULT_LABEL_SHADOW_PAINT
          缺省的绘制标签阴影的paint.
static double DEFAULT_MAXIMUM_LABEL_WIDTH
          缺省的标签的最大宽度(绘制区域的百分比).
static double DEFAULT_MINIMUM_ARC_ANGLE_TO_DRAW
          最小的扇形绘制弧度.
static boolean DEFAULT_PIE_IS_3D
          缺省是否是3D类型的饼图.
static Rotation DEFAULT_PIE_ROTATION
          缺省的绘制饼图的方向.
static java.awt.Paint DEFAULT_PIE_SHADOW_PAINT
          缺省的绘制饼图阴影的paint.
static boolean DEFAULT_SECTION_OUTLINES_VISIBLE
          缺省是否绘制扇形的边框.
static double DEFAULT_SHADOW_X_OFFSET
          缺省的x方向的阴影长度.
static double DEFAULT_SHADOW_Y_OFFSET
          缺省的y方向的阴影长度.
static boolean DEFAULT_SIMPLE_LABELS
          缺省的绘制label的类型,在饼图区域内显示还是外面显示.
static double DEFAULT_START_ANGLE
          缺省的开始绘制扇形的角度.
static double MAX_INTERIOR_GAP
          最大的内部空白大小(百分比).
 
Fields inherited from class com.ijchart.xychart.render.AbstractRender
borderPaints, borderStrokes, DEFAULT_AUTO_SELECT_BORDER_PAINT, DEFAULT_AUTO_SELECT_BORDER_STROKE, DEFAULT_AUTO_SELECT_FILL_PAINT, DEFAULT_BACKGROUND_IMAGE_ALIGNMENT, DEFAULT_BACKGROUND_PAINT, DEFAULT_BASE_BORDER_PAINT, DEFAULT_BASE_BORDER_STROKE, DEFAULT_BASE_ITEM_FILL, DEFAULT_BASE_ITEM_FILL_PAINT, DEFAULT_BASE_ITEM_FILL_PAINT_TRANSFORMER, DEFAULT_BASE_ITEM_LABEL_FONT, DEFAULT_BASE_ITEM_LABEL_HORIZONTAL_ALIGNMENT, DEFAULT_BASE_ITEM_LABEL_PAINT, DEFAULT_BASE_ITEM_LABEL_VERTICAL_ALIGNMENT, DEFAULT_BASE_ITEM_LABEL_VISIBLE, DEFAULT_BORDER_PAINT, DEFAULT_BORDER_STROKE, DEFAULT_DRAW_BORDER, DEFAULT_DRAWINT_SUPPLIER, DEFAULT_GENERATOR_TOOLTIP, DEFAULT_GENERATOR_URL, DEFAULT_LABEL_GENERATOR, DEFAULT_RENDER_AREA_BORDER_VISIBLE, DEFAULT_TOOLTIP_GENERATOR, fillPaints
 
Constructor Summary
PieRender(SingleRowDataset dataset)
          构造器.
PieRender(SingleRowDataset dataset, boolean is3D)
          构造器.
 
Method Summary
 java.lang.Object clone()
          返回克隆的对象.
protected  IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect, java.lang.String text, java.lang.Object appendParam)
          只创建图形,不设置图形的属性.
 void drawAllItems(java.awt.geom.Rectangle2D dataArea, RenderShapeCollection renderShapes, float alpha)
          绘制所有的图形.
 void drawBackground(java.awt.geom.Rectangle2D dataArea, ChartOrientation orientation, RenderShapeCollection renderShapes)
          绘制背景颜色.
protected  void drawLabels(double totalValue, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D pieArea, java.awt.geom.Rectangle2D linkArea, RenderShapeCollection renderShapes)
          绘制饼图外部的标签.
protected  void drawLeftLabels(java.util.Hashtable leftKeys, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D linkArea, java.awt.geom.Rectangle2D pieArea, RenderShapeCollection renderShapes)
          绘制左边的标签.
protected  void drawRightLabels(java.util.Hashtable rightKeys, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D linkArea, java.awt.geom.Rectangle2D pieArea, RenderShapeCollection renderShapes)
          绘制右边的标签.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
protected  java.awt.geom.Rectangle2D getArcBounds(java.awt.geom.Rectangle2D unexploded, double startAngle, double extent, double explodePercent)
          计算包含扇形(arc)的矩形,主要是考虑到有些arc是偏离圆心的.
 double getDepth3D()
          返回绘制3D效果的深度.
 double getExplodePercentages(int index)
          返回数据偏离圆心的大小(相对圆半径大小).
 double getInteriorGap()
          返回内部的空白(百分比).
 java.awt.Paint getLabelBackgroundPaint()
          返回标签的背景颜色.
 double getLabelGap()
          返回标签离render边框的距离(百分比).
 double getLabelLinkMargin()
          返回连接线的空白.
 java.awt.Paint getLabelLinkPaint()
          返回绘制连接线的paint.
 java.awt.Stroke getLabelLinkStroke()
          返回绘制连接线的stroke.
 java.awt.Paint getLabelOutlinePaint()
          返回绘制标签的边框paint.
 java.awt.Stroke getLabelOutlineStroke()
          返回绘制边框的stroke.
 RectangleInsets getLabelPadding()
          返回标签的补白.
 java.awt.Paint getLabelShadowPaint()
          返回绘制标签阴影的paint.
 double getMaximumExplodePercent()
          计算最大的偏离圆心的大小.
 double getMaximumLabelWidth()
          返回标签的最大宽度(绘制区域的百分比).
 double getMinimumArcAngleToDraw()
          返回绘制扇形的最小角度.
 Rotation getPieRotation()
          返回绘制饼图的方向.
 java.awt.Paint getPieShadowPaint()
          返回绘制饼图阴影的paint.
 double getRingLengthFactor()
          返回环的长度与扇区半径的占比.
 double getShadowXOffset()
          返回x方向的阴影长度.
 double getShadowYOffset()
          返回x方向的阴影长度.
 double getStartAngle()
          返回开始绘制扇形的角度.
 int hashCode()
          计算对象的hashcode值.
 boolean isCircular()
          返回是否强制饼图为圆形.
 boolean isDrawAsRing()
          返回是否显示为圆环图.
 boolean isLabelInPie()
          返回标签是否在饼图内部.
 boolean isLabelLinksVisible()
          返回是否显示标签和饼图之间的连接线.
 boolean isPie3D()
          返回是否是3D类型的饼图.
 boolean isSectionOutlinesVisible()
          返回是否绘制扇形的边框.
 boolean isSimpleLabels()
          返回绘制label的类型,在饼图区域内显示还是外面显示.
 void setCircular(boolean flag)
          设置是否强制饼图为圆形,并向所有监听器发送 RenderChangeEvent事件.
 void setDepth3D(double depth3D)
          设置绘制3D效果的深度,并向所有监听器发送 RenderChangeEvent事件.
 void setDrawAsRing(boolean flag)
          设置是否显示为圆环图,并向所有监听器发送 RenderChangeEvent事件.
 void setExplodePercent(int index, double percent)
          设置数据偏离圆心的大小,并向所有监听器发送 RenderChangeEvent事件.
 void setInteriorGap(double gapSize)
          设置内部的空白(百分比),并向所有监听器发送 RenderChangeEvent事件.
 void setLabelBackgroundPaint(java.awt.Paint paint)
          设置标签的背景颜色,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelGap(double gap)
          设置标签离render边框的距离(百分比),并向所有监听器发送 RenderChangeEvent事件.
 void setLabelInPie(boolean flag)
          设置标签是否在饼图内部,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelLinkMargin(double margin)
          设置连接线的空白,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelLinkPaint(java.awt.Paint paint)
          设置绘制连接线的paint,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelLinkStroke(java.awt.Stroke stroke)
          设置绘制连接线的stroke,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelLinksVisible(boolean flag)
          设置是否显示标签和饼图之间的连接线,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelOutlinePaint(java.awt.Paint paint)
          设置绘制标签的边框paint,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelOutlineStroke(java.awt.Stroke stroke)
          设置绘制边框的stroke,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelPadding(RectangleInsets padding)
          设置标签的补白,并向所有监听器发送 RenderChangeEvent事件.
 void setLabelShadowPaint(java.awt.Paint paint)
          设置绘制标签阴影的paint,并向所有监听器发送 RenderChangeEvent事件.
 void setMaximumLabelWidth(double maximumWidth)
          设置标签的最大宽度(绘制区域的百分比),并向所有监听器发送 RenderChangeEvent事件.
 void setMinimumArcAngleToDraw(double angle)
          设置绘制扇形的最小角度,并向所有监听器发送 RenderChangeEvent事件.
 void setPie3D(boolean flag)
          设置是否是3D类型的饼图,并向所有监听器发送 RenderChangeEvent事件.
 void setPieRotation(Rotation rotation)
          设置绘制饼图的方向,并向所有监听器发送 RenderChangeEvent事件.
 void setPieShadowPaint(java.awt.Paint paint)
          设置绘制饼图阴影的paint,并向所有监听器发送 RenderChangeEvent事件.
 void setRingLengthFactor(double factor)
          设置环的长度与扇区半径的占比,并向所有监听器发送 RenderChangeEvent事件.
 void setSectionOutlinesVisible(boolean flag)
          设置是否绘制扇形的边框,并向所有监听器发送 RenderChangeEvent事件.
 void setShadowXOffset(double offset)
          设置x方向的阴影长度,并向所有监听器发送 RenderChangeEvent事件.
 void setShadowYOffset(double offset)
          设置y方向的阴影长度,并向所有监听器发送 RenderChangeEvent事件.
 void setSimpleLabels(boolean flag)
          设置绘制label的类型,在饼图区域内显示还是外面显示,并向所有监听器发送 RenderChangeEvent事件.
 void setStartAngle(double angle)
          设置开始绘制扇形的角度,并向所有监听器发送 RenderChangeEvent事件.
 java.lang.String toString()
          覆盖toString方法.
 
Methods inherited from class com.ijchart.xychart.render.noaxis.AbstractNoAxisRender
createItemShape
 
Methods inherited from class com.ijchart.xychart.render.AbstractRender
add3DShapes, addChangeListener, calculateLegendItemShapes, datasetChanged, drawBackgroundImage, drawDrawAreaBorder, fireRenderChanged, getBackgroundImage, getBackgroundImageAlignment, getBackgroundImageAlpha, getBackgroundPaint, getBaseItemBorderPaint, getBaseItemBorderStroke, getBaseItemFillPaint, getBaseItemFillPaintTransformer, getBaseItemLabelDirection, getBaseItemLabelFont, getBaseItemLabelHorizontalAlignment, getBaseItemLabelPaint, getBaseItemLabelPosition, getBaseItemLabelVerticalAlignment, getBaseItemLabelVisible, getBorderPaints, getBorderStrokes, getChartArea, getColumnItemBorderPaint, getColumnItemBorderStroke, getColumnItemFillPaint, getColumnItemFillPaintTransformer, getColumnItemLabelDirection, getColumnItemLabelFont, getColumnItemLabelHorizontalAlignment, getColumnItemLabelPaint, getColumnItemLabelPosition, getColumnItemLabelVerticalAlignment, getDataset, getDrawingSupplier, getFillPaints, getItemBorderPaint, getItemBorderStroke, getItemFillPaint, getItemFillPaintHelper, getItemFillPaintTransformer, getItemLabelDirection, getItemLabelFont, getItemLabelHorizontalAlignment, getItemLabelPaint, getItemLabelPosition, getItemLabelVerticalAlignment, getLabelGenerator, getLegendItemCount, getLegendItemLabels, getLegendItemLabelsByColumn, getLegendItemLabelsByRow, getLegendItemShapes, getLegendPositon, getLegendType, getNegativeItemLabelHorizontalAlignment, getNegativeItemLabelVerticalAlignment, getPositiveItemLabelHorizontalAlignment, getPositiveItemLabelVerticalAlignment, getRenderAreaBorderPaint, getRenderAreaBorderStroke, getRowItemBorderPaint, getRowItemBorderStroke, getRowItemFillPaint, getRowItemFillPaintTransformer, getRowItemLabelDirection, getRowItemLabelFont, getRowItemLabelHorizontalAlignment, getRowItemLabelPaint, getRowItemLabelPosition, getRowItemLabelVerticalAlignment, getToolTipGenerator, hasListener, isAutoSelectBorderPaint, isAutoSelectBorderStroke, isAutoSelectFillPaint, isBaseItemDrawBorder, isBaseItemFill, isColumnItemDrawBorder, isColumnItemFill, isColumnItemLabelVisible, isColumnItemVisible, isGeneratorTooltip, isGeneratorUrl, isItemDrawBorder, isItemFill, isItemLabelVisible, isItemVisible, isRenderAreaBorderVisible, isRowItemDrawBorder, isRowItemFill, isRowItemLabelVisible, isRowItemVisible, notifyListeners, removeAllChangeListener, removeChangeListener, setAutoSelectBorderPaint, setAutoSelectBorderStroke, setAutoSelectFillPaint, setBackgroundImage, setBackgroundImageAlignment, setBackgroundImageAlpha, setBackgroundPaint, setBaseItemBorderPaint, setBaseItemBorderStroke, setBaseItemDrawBorder, setBaseItemFill, setBaseItemFillPaint, setBaseItemFillPaintTransformer, setBaseItemLabelDirection, setBaseItemLabelFont, setBaseItemLabelHorizontalAlignment, setBaseItemLabelPaint, setBaseItemLabelPosition, setBaseItemLabelVerticalAlignment, setBaseItemLabelVisible, setChartArea, setColumnItemBorderPaint, setColumnItemBorderStroke, setColumnItemDrawBorder, setColumnItemFill, setColumnItemFillPaint, setColumnItemFillPaintTransformer, setColumnItemLabelDirection, setColumnItemLabelFont, setColumnItemLabelHorizontalAlignment, setColumnItemLabelPaint, setColumnItemLabelPosition, setColumnItemLabelVerticalAlignment, setColumnItemLabelVisible, setColumnItemVisible, setCustomLegendType, setDataset, setDrawingSupplier, setDrawingSupplier, setGeneratorTooltip, setGeneratorUrl, setItemBorderPaint, setItemBorderStroke, setItemDrawBorder, setItemFill, setItemFillPaint, setItemFillPaintTransformer, setItemLabelDirection, setItemLabelFont, setItemLabelHorizontalAlignment, setItemLabelPaint, setItemLabelPosition, setItemLabelVerticalAlignment, setItemLabelVisible, setItemVisible, setLabelGenerator, setLegendPositon, setNegativeItemLabelHorizontalAlignment, setNegativeItemLabelVerticalAlignment, setPositiveItemLabelHorizontalAlignment, setPositiveItemLabelVerticalAlignment, setRenderAreaBorderPaint, setRenderAreaBorderStroke, setRenderAreaBorderVisible, setRowItemBorderPaint, setRowItemBorderStroke, setRowItemDrawBorder, setRowItemFill, setRowItemFillPaint, setRowItemFillPaintTransformer, setRowItemLabelDirection, setRowItemLabelFont, setRowItemLabelHorizontalAlignment, setRowItemLabelPaint, setRowItemLabelPosition, setRowItemLabelVerticalAlignment, setRowItemLabelVisible, setRowItemVisible, setToolTipGenerator
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.ijchart.xychart.render.IRender
addChangeListener, drawBackgroundImage, drawDrawAreaBorder, getBaseItemBorderPaint, getBaseItemBorderStroke, getBaseItemFillPaint, getBaseItemFillPaintTransformer, getBaseItemLabelFont, getBaseItemLabelHorizontalAlignment, getBaseItemLabelPaint, getBaseItemLabelPosition, getBaseItemLabelVerticalAlignment, getBaseItemLabelVisible, getColumnItemBorderPaint, getColumnItemBorderStroke, getColumnItemFillPaint, getColumnItemFillPaintTransformer, getColumnItemLabelFont, getColumnItemLabelHorizontalAlignment, getColumnItemLabelPaint, getColumnItemLabelPosition, getColumnItemLabelVerticalAlignment, getItemBorderPaint, getItemBorderStroke, getItemFillPaint, getItemFillPaintTransformer, getItemLabelFont, getItemLabelHorizontalAlignment, getItemLabelPaint, getItemLabelPosition, getItemLabelVerticalAlignment, getLabelGenerator, getLegendType, getNegativeItemLabelHorizontalAlignment, getNegativeItemLabelVerticalAlignment, getPositiveItemLabelHorizontalAlignment, getPositiveItemLabelVerticalAlignment, getRowItemBorderPaint, getRowItemBorderStroke, getRowItemFillPaint, getRowItemFillPaintTransformer, getRowItemLabelFont, getRowItemLabelHorizontalAlignment, getRowItemLabelPaint, getRowItemLabelPosition, getRowItemLabelVerticalAlignment, getToolTipGenerator, isBaseItemDrawBorder, isBaseItemFill, isColumnItemDrawBorder, isColumnItemFill, isColumnItemLabelVisible, isColumnItemVisible, isItemDrawBorder, isItemFill, isItemLabelVisible, isItemVisible, isRowItemDrawBorder, isRowItemFill, isRowItemLabelVisible, isRowItemVisible, removeAllChangeListener, removeChangeListener, setBaseItemBorderPaint, setBaseItemBorderStroke, setBaseItemDrawBorder, setBaseItemFill, setBaseItemFillPaint, setBaseItemFillPaintTransformer, setBaseItemLabelFont, setBaseItemLabelHorizontalAlignment, setBaseItemLabelPaint, setBaseItemLabelPosition, setBaseItemLabelVerticalAlignment, setBaseItemLabelVisible, setColumnItemBorderPaint, setColumnItemBorderStroke, setColumnItemDrawBorder, setColumnItemFill, setColumnItemFillPaint, setColumnItemFillPaintTransformer, setColumnItemLabelFont, setColumnItemLabelHorizontalAlignment, setColumnItemLabelPaint, setColumnItemLabelPosition, setColumnItemLabelVerticalAlignment, setColumnItemLabelVisible, setColumnItemVisible, setCustomLegendType, setItemBorderPaint, setItemBorderStroke, setItemDrawBorder, setItemFill, setItemFillPaint, setItemFillPaintTransformer, setItemLabelFont, setItemLabelHorizontalAlignment, setItemLabelPaint, setItemLabelPosition, setItemLabelVerticalAlignment, setItemLabelVisible, setItemVisible, setLabelGenerator, setNegativeItemLabelHorizontalAlignment, setNegativeItemLabelVerticalAlignment, setPositiveItemLabelHorizontalAlignment, setPositiveItemLabelVerticalAlignment, setRowItemBorderPaint, setRowItemBorderStroke, setRowItemDrawBorder, setRowItemFill, setRowItemFillPaint, setRowItemFillPaintTransformer, setRowItemLabelFont, setRowItemLabelHorizontalAlignment, setRowItemLabelPaint, setRowItemLabelPosition, setRowItemLabelVerticalAlignment, setRowItemLabelVisible, setRowItemVisible, setToolTipGenerator
 

Field Detail

DEFAULT_INTERIOR_GAP

public static final double DEFAULT_INTERIOR_GAP
缺省的内部的空白(百分比).

See Also:
Constant Field Values

DEFAULT_IS_CIRCLE

public static final boolean DEFAULT_IS_CIRCLE
缺省是否强制饼图为圆形.

See Also:
Constant Field Values

MAX_INTERIOR_GAP

public static final double MAX_INTERIOR_GAP
最大的内部空白大小(百分比).

See Also:
Constant Field Values

DEFAULT_START_ANGLE

public static final double DEFAULT_START_ANGLE
缺省的开始绘制扇形的角度.

See Also:
Constant Field Values

DEFAULT_PIE_ROTATION

public static final Rotation DEFAULT_PIE_ROTATION
缺省的绘制饼图的方向.


DEFAULT_SECTION_OUTLINES_VISIBLE

public static final boolean DEFAULT_SECTION_OUTLINES_VISIBLE
缺省是否绘制扇形的边框.

See Also:
Constant Field Values

DEFAULT_SHADOW_X_OFFSET

public static final double DEFAULT_SHADOW_X_OFFSET
缺省的x方向的阴影长度.

See Also:
Constant Field Values

DEFAULT_SHADOW_Y_OFFSET

public static final double DEFAULT_SHADOW_Y_OFFSET
缺省的y方向的阴影长度.

See Also:
Constant Field Values

DEFAULT_LABEL_BACKGROUND_PAINT

public static final java.awt.Paint DEFAULT_LABEL_BACKGROUND_PAINT
缺省的标签的背景paint.


DEFAULT_LABEL_OUTLINE_PAINT

public static final java.awt.Paint DEFAULT_LABEL_OUTLINE_PAINT
绘制标签的边框paint.


DEFAULT_LABEL_OUTLINE_STROKE

public static final java.awt.Stroke DEFAULT_LABEL_OUTLINE_STROKE
缺省的绘制边框的stroke.


DEFAULT_LABEL_SHADOW_PAINT

public static final java.awt.Paint DEFAULT_LABEL_SHADOW_PAINT
缺省的绘制标签阴影的paint.


DEFAULT_MINIMUM_ARC_ANGLE_TO_DRAW

public static final double DEFAULT_MINIMUM_ARC_ANGLE_TO_DRAW
最小的扇形绘制弧度.

See Also:
Constant Field Values

DEFAULT_PIE_SHADOW_PAINT

public static final java.awt.Paint DEFAULT_PIE_SHADOW_PAINT
缺省的绘制饼图阴影的paint.


DEFAULT_LABEL_IN_PIE

public static final boolean DEFAULT_LABEL_IN_PIE
缺省标签是否在饼图内部.

See Also:
Constant Field Values

DEFAULT_LABEL_PADDING

public static final RectangleInsets DEFAULT_LABEL_PADDING
缺省标签的补白.


DEFAULT_MAXIMUM_LABEL_WIDTH

public static final double DEFAULT_MAXIMUM_LABEL_WIDTH
缺省的标签的最大宽度(绘制区域的百分比).

See Also:
Constant Field Values

DEFAULT_LABEL_GAP

public static final double DEFAULT_LABEL_GAP
缺省的标签离render边框的距离(百分比).

See Also:
Constant Field Values

DEFAULT_LABEL_LINKS_VISIBLE

public static final boolean DEFAULT_LABEL_LINKS_VISIBLE
缺省是否显示标签和饼图之间的连接线.

See Also:
Constant Field Values

DEFAULT_LABEL_LINK_MARGIN

public static final double DEFAULT_LABEL_LINK_MARGIN
缺省的连接线的空白.

See Also:
Constant Field Values

DEFAULT_LABEL_LINK_PAINT

public static final java.awt.Paint DEFAULT_LABEL_LINK_PAINT
缺省绘制连接线的paint.


DEFAULT_LABEL_LINK_STROKE

public static final java.awt.Stroke DEFAULT_LABEL_LINK_STROKE
缺省绘制连接线的stroke.


DEFAULT_SIMPLE_LABELS

public static final boolean DEFAULT_SIMPLE_LABELS
缺省的绘制label的类型,在饼图区域内显示还是外面显示.

See Also:
Constant Field Values

DEFAULT_PIE_IS_3D

public static final boolean DEFAULT_PIE_IS_3D
缺省是否是3D类型的饼图.

See Also:
Constant Field Values

DEFAULT_DEPTH_3D

public static final double DEFAULT_DEPTH_3D
缺省的绘制3D效果的深度.

See Also:
Constant Field Values

DEFAULT_DRAW_AS_RING

public static final boolean DEFAULT_DRAW_AS_RING
是否显示为圆环图的缺省值.

See Also:
Constant Field Values
Constructor Detail

PieRender

public PieRender(SingleRowDataset dataset)
构造器.

Parameters:
dataset - SingleRowDataset 数据集 (不可为null).

PieRender

public PieRender(SingleRowDataset dataset,
                 boolean is3D)
构造器.

Parameters:
dataset - SingleRowDataset 数据集 (不可为null).
is3D - boolean 是否是3D类型的饼图.
Method Detail

getInteriorGap

public double getInteriorGap()
返回内部的空白(百分比).

Returns:
double 空白.

setInteriorGap

public void setInteriorGap(double gapSize)
设置内部的空白(百分比),并向所有监听器发送 RenderChangeEvent事件.

Parameters:
gapSize - double 空白,属于区间[0.0,1.0).

isCircular

public boolean isCircular()
返回是否强制饼图为圆形.

Returns:
boolean 布尔值.

setCircular

public void setCircular(boolean flag)
设置是否强制饼图为圆形,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getStartAngle

public double getStartAngle()
返回开始绘制扇形的角度.

Returns:
double 角度.

setStartAngle

public void setStartAngle(double angle)
设置开始绘制扇形的角度,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
angle - double 角度.

getPieRotation

public Rotation getPieRotation()
返回绘制饼图的方向.

Returns:
Rotation 方向.

setPieRotation

public void setPieRotation(Rotation rotation)
设置绘制饼图的方向,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
rotation - Rotation 方向 (不可为null).

isSectionOutlinesVisible

public boolean isSectionOutlinesVisible()
返回是否绘制扇形的边框.

Returns:
boolean 布尔值.

setSectionOutlinesVisible

public void setSectionOutlinesVisible(boolean flag)
设置是否绘制扇形的边框,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean

getPieShadowPaint

public java.awt.Paint getPieShadowPaint()
返回绘制饼图阴影的paint.

Returns:
Paint paint对象 (可为null).

setPieShadowPaint

public void setPieShadowPaint(java.awt.Paint paint)
设置绘制饼图阴影的paint,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (可为null).

getShadowXOffset

public double getShadowXOffset()
返回x方向的阴影长度.

Returns:
double 偏移值.

setShadowXOffset

public void setShadowXOffset(double offset)
设置x方向的阴影长度,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
offset - double 偏移值.

getShadowYOffset

public double getShadowYOffset()
返回x方向的阴影长度.

Returns:
double 偏移值.

setShadowYOffset

public void setShadowYOffset(double offset)
设置y方向的阴影长度,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
offset - double 偏移值.

getExplodePercentages

public double getExplodePercentages(int index)
返回数据偏离圆心的大小(相对圆半径大小).

Parameters:
index - int 数据集中数据的索引值.
Returns:
double 偏离大小.

setExplodePercent

public void setExplodePercent(int index,
                              double percent)
设置数据偏离圆心的大小,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
index - int 数据集中数据的索引值.
percent - double 偏离百分比.

getLabelBackgroundPaint

public java.awt.Paint getLabelBackgroundPaint()
返回标签的背景颜色.

Returns:
Paint paint对象.

setLabelBackgroundPaint

public void setLabelBackgroundPaint(java.awt.Paint paint)
设置标签的背景颜色,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (可为null).

getLabelOutlinePaint

public java.awt.Paint getLabelOutlinePaint()
返回绘制标签的边框paint.

Returns:
Paint paint对象.

setLabelOutlinePaint

public void setLabelOutlinePaint(java.awt.Paint paint)
设置绘制标签的边框paint,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (可为null).

getLabelOutlineStroke

public java.awt.Stroke getLabelOutlineStroke()
返回绘制边框的stroke.

Returns:
Stroke stroke对象.

setLabelOutlineStroke

public void setLabelOutlineStroke(java.awt.Stroke stroke)
设置绘制边框的stroke,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
stroke - Stroke stroke对象 (可为null).

getLabelShadowPaint

public java.awt.Paint getLabelShadowPaint()
返回绘制标签阴影的paint.

Returns:
Paint paint对象.

setLabelShadowPaint

public void setLabelShadowPaint(java.awt.Paint paint)
设置绘制标签阴影的paint,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint

isLabelInPie

public boolean isLabelInPie()
返回标签是否在饼图内部.

Returns:
boolean 布尔值.

setLabelInPie

public void setLabelInPie(boolean flag)
设置标签是否在饼图内部,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getLabelPadding

public RectangleInsets getLabelPadding()
返回标签的补白.

Returns:
RectangleInsets 补白 (不为null).

setLabelPadding

public void setLabelPadding(RectangleInsets padding)
设置标签的补白,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
padding - RectangleInsets 补白 (不可为null).

getMaximumLabelWidth

public double getMaximumLabelWidth()
返回标签的最大宽度(绘制区域的百分比).

Returns:
double 宽度.

setMaximumLabelWidth

public void setMaximumLabelWidth(double maximumWidth)
设置标签的最大宽度(绘制区域的百分比),并向所有监听器发送 RenderChangeEvent事件.

Parameters:
maximumWidth - double 宽度,必须>0.

getLabelGap

public double getLabelGap()
返回标签离render边框的距离(百分比).

Returns:
double 空白大小.

setLabelGap

public void setLabelGap(double gap)
设置标签离render边框的距离(百分比),并向所有监听器发送 RenderChangeEvent事件.

Parameters:
gap - double double 空白,必须>=0.

isLabelLinksVisible

public boolean isLabelLinksVisible()
返回是否显示标签和饼图之间的连接线.

Returns:
boolean 布尔值.

setLabelLinksVisible

public void setLabelLinksVisible(boolean flag)
设置是否显示标签和饼图之间的连接线,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getLabelLinkMargin

public double getLabelLinkMargin()
返回连接线的空白.

Returns:
double 空白.

setLabelLinkMargin

public void setLabelLinkMargin(double margin)
设置连接线的空白,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
margin - double 空白,必须>=0.

getLabelLinkPaint

public java.awt.Paint getLabelLinkPaint()
返回绘制连接线的paint.

Returns:
Paint paint对象.

setLabelLinkPaint

public void setLabelLinkPaint(java.awt.Paint paint)
设置绘制连接线的paint,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
paint - Paint paint对象 (不可为null).

getLabelLinkStroke

public java.awt.Stroke getLabelLinkStroke()
返回绘制连接线的stroke.

Returns:
Stroke stroke对象.

setLabelLinkStroke

public void setLabelLinkStroke(java.awt.Stroke stroke)
设置绘制连接线的stroke,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
stroke - Stroke stroke对象.

isSimpleLabels

public boolean isSimpleLabels()
返回绘制label的类型,在饼图区域内显示还是外面显示.

Returns:
boolean 布尔值.

setSimpleLabels

public void setSimpleLabels(boolean flag)
设置绘制label的类型,在饼图区域内显示还是外面显示,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getMinimumArcAngleToDraw

public double getMinimumArcAngleToDraw()
返回绘制扇形的最小角度.

Returns:
double 角度.

setMinimumArcAngleToDraw

public void setMinimumArcAngleToDraw(double angle)
设置绘制扇形的最小角度,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
angle - double 角度,必须>=0.

isPie3D

public boolean isPie3D()
返回是否是3D类型的饼图.

Returns:
boolean 布尔值.

setPie3D

public void setPie3D(boolean flag)
设置是否是3D类型的饼图,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getDepth3D

public double getDepth3D()
返回绘制3D效果的深度.

Returns:
double 深度.

setDepth3D

public void setDepth3D(double depth3D)
设置绘制3D效果的深度,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
depth3D - double 深度.

isDrawAsRing

public boolean isDrawAsRing()
返回是否显示为圆环图.

Returns:
boolean 布尔值.

setDrawAsRing

public void setDrawAsRing(boolean flag)
设置是否显示为圆环图,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getRingLengthFactor

public double getRingLengthFactor()
返回环的长度与扇区半径的占比.

Returns:
double 长度因子.

setRingLengthFactor

public void setRingLengthFactor(double factor)
设置环的长度与扇区半径的占比,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
factor - double 长度因子,属于区间(0,1].

drawAllItems

public void drawAllItems(java.awt.geom.Rectangle2D dataArea,
                         RenderShapeCollection renderShapes,
                         float alpha)
绘制所有的图形.

Specified by:
drawAllItems in class AbstractNoAxisRender
Parameters:
dataArea - Rectangle2D 数据区域 (不可为null).
renderShapes - RenderShapeCollection render图形集合 (不可为null).
alpha - float alpha值,须属于闭区间[0.0,1.0].

getArcBounds

protected java.awt.geom.Rectangle2D getArcBounds(java.awt.geom.Rectangle2D unexploded,
                                                 double startAngle,
                                                 double extent,
                                                 double explodePercent)
计算包含扇形(arc)的矩形,主要是考虑到有些arc是偏离圆心的.

Parameters:
unexploded - 在内部绘制未偏移的扇形的矩形.
startAngle - 开始的角度.
extent - 扇形的扩展角度.
explodePercent - 偏离圆心的百分比.
Returns:
矩形.

createItemShapeOnly

protected IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect,
                                          java.lang.String text,
                                          java.lang.Object appendParam)
只创建图形,不设置图形的属性.

Overrides:
createItemShapeOnly in class AbstractRender
Parameters:
rect - Rectangle2D 柱形图的矩形 (不可为null).
text - String 要显示的文字 (可为null).
appendParam - Object 附加的参数,用于传递额外的对象 (可为null).
Returns:
IChartShape 图形.

drawBackground

public void drawBackground(java.awt.geom.Rectangle2D dataArea,
                           ChartOrientation orientation,
                           RenderShapeCollection renderShapes)
绘制背景颜色.

Specified by:
drawBackground in interface IRender
Overrides:
drawBackground in class AbstractRender
Parameters:
dataArea - Rectangle2D 数据区域 (不可为null).
orientation - ChartOrientation 图表绘制方向 (不可为null).
renderShapes - RenderShapeCollection render图形集合 (不可为null).

getMaximumExplodePercent

public double getMaximumExplodePercent()
计算最大的偏离圆心的大小.

Returns:
double 最大的百分比.

drawLabels

protected void drawLabels(double totalValue,
                          java.awt.geom.Rectangle2D dataArea,
                          java.awt.geom.Rectangle2D pieArea,
                          java.awt.geom.Rectangle2D linkArea,
                          RenderShapeCollection renderShapes)
绘制饼图外部的标签.

Parameters:
totalValue - double 饼图数据集的所有数据的和.
dataArea - Rectangle2D 数据区域.
pieArea - Rectangle2D 饼图区域.
linkArea - Rectangle2D 包含外部标签的区域.
renderShapes - RenderShapeCollection render图形集合.

drawLeftLabels

protected void drawLeftLabels(java.util.Hashtable leftKeys,
                              java.awt.geom.Rectangle2D dataArea,
                              java.awt.geom.Rectangle2D linkArea,
                              java.awt.geom.Rectangle2D pieArea,
                              RenderShapeCollection renderShapes)
绘制左边的标签.

Parameters:
leftKeys - Hashtable 左边的标签对象.
dataArea - Rectangle2D 数据区域.
linkArea - Rectangle2D 包含外部标签的区域.
pieArea - Rectangle2D 饼图区域.
renderShapes - RenderShapeCollection render图形集合.

drawRightLabels

protected void drawRightLabels(java.util.Hashtable rightKeys,
                               java.awt.geom.Rectangle2D dataArea,
                               java.awt.geom.Rectangle2D linkArea,
                               java.awt.geom.Rectangle2D pieArea,
                               RenderShapeCollection renderShapes)
绘制右边的标签.

Parameters:
rightKeys - Hashtable 左边的标签对象.
dataArea - Rectangle2D 数据区域.
linkArea - Rectangle2D 包含外部标签的区域.
pieArea - Rectangle2D 饼图区域.
renderShapes - RenderShapeCollection render图形集合.

equals

public boolean equals(java.lang.Object obj)
测试两个对象是否相等.

Overrides:
equals in class AbstractNoAxisRender
Parameters:
obj - the object (null permitted).
Returns:
A boolean.

hashCode

public int hashCode()
计算对象的hashcode值.

Overrides:
hashCode in class AbstractNoAxisRender
Returns:
int 对象的hashcode值.

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
返回克隆的对象.

Overrides:
clone in class AbstractNoAxisRender
Returns:
object a clone of this instance.
Throws:
java.lang.CloneNotSupportedException - if the object's class does not support the Cloneable interface. Subclasses that override the clone method can also throw this exception to indicate that an instance cannot be cloned.

toString

public java.lang.String toString()
覆盖toString方法.

Overrides:
toString in class AbstractNoAxisRender
Returns:
a string representation of the object.