|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.ijchart.xychart.render.AbstractRender
com.ijchart.xychart.render.noaxis.AbstractNoAxisRender
com.ijchart.xychart.render.noaxis.PieRender
public class PieRender
Title: IJChart
Description: a chart library for the Java(tm) platform.
绘制饼图.Copyright: Copyright (c) 2013
Company:
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
最大的内部空白大小(百分比). |
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 java.lang.Object |
---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final double DEFAULT_INTERIOR_GAP
public static final boolean DEFAULT_IS_CIRCLE
public static final double MAX_INTERIOR_GAP
public static final double DEFAULT_START_ANGLE
public static final Rotation DEFAULT_PIE_ROTATION
public static final boolean DEFAULT_SECTION_OUTLINES_VISIBLE
public static final double DEFAULT_SHADOW_X_OFFSET
public static final double DEFAULT_SHADOW_Y_OFFSET
public static final java.awt.Paint DEFAULT_LABEL_BACKGROUND_PAINT
public static final java.awt.Paint DEFAULT_LABEL_OUTLINE_PAINT
public static final java.awt.Stroke DEFAULT_LABEL_OUTLINE_STROKE
public static final java.awt.Paint DEFAULT_LABEL_SHADOW_PAINT
public static final double DEFAULT_MINIMUM_ARC_ANGLE_TO_DRAW
public static final java.awt.Paint DEFAULT_PIE_SHADOW_PAINT
public static final boolean DEFAULT_LABEL_IN_PIE
public static final RectangleInsets DEFAULT_LABEL_PADDING
public static final double DEFAULT_MAXIMUM_LABEL_WIDTH
public static final double DEFAULT_LABEL_GAP
public static final boolean DEFAULT_LABEL_LINKS_VISIBLE
public static final double DEFAULT_LABEL_LINK_MARGIN
public static final java.awt.Paint DEFAULT_LABEL_LINK_PAINT
public static final java.awt.Stroke DEFAULT_LABEL_LINK_STROKE
public static final boolean DEFAULT_SIMPLE_LABELS
public static final boolean DEFAULT_PIE_IS_3D
public static final double DEFAULT_DEPTH_3D
public static final boolean DEFAULT_DRAW_AS_RING
Constructor Detail |
---|
public PieRender(SingleRowDataset dataset)
dataset
- SingleRowDataset 数据集 (不可为null).
public PieRender(SingleRowDataset dataset, boolean is3D)
dataset
- SingleRowDataset 数据集 (不可为null).
is3D
- boolean 是否是3D类型的饼图.
Method Detail |
---|
public double getInteriorGap()
public void setInteriorGap(double gapSize)
RenderChangeEvent
事件.
gapSize
- double 空白,属于区间[0.0,1.0).
public boolean isCircular()
public void setCircular(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public double getStartAngle()
public void setStartAngle(double angle)
RenderChangeEvent
事件.
angle
- double 角度.
public Rotation getPieRotation()
public void setPieRotation(Rotation rotation)
RenderChangeEvent
事件.
rotation
- Rotation 方向 (不可为null).
public boolean isSectionOutlinesVisible()
public void setSectionOutlinesVisible(boolean flag)
RenderChangeEvent
事件.
flag
- booleanpublic java.awt.Paint getPieShadowPaint()
public void setPieShadowPaint(java.awt.Paint paint)
RenderChangeEvent
事件.
paint
- Paint paint对象 (可为null).
public double getShadowXOffset()
public void setShadowXOffset(double offset)
RenderChangeEvent
事件.
offset
- double 偏移值.
public double getShadowYOffset()
public void setShadowYOffset(double offset)
RenderChangeEvent
事件.
offset
- double 偏移值.
public double getExplodePercentages(int index)
index
- int 数据集中数据的索引值.
public void setExplodePercent(int index, double percent)
RenderChangeEvent
事件.
index
- int 数据集中数据的索引值.
percent
- double 偏离百分比.
public java.awt.Paint getLabelBackgroundPaint()
public void setLabelBackgroundPaint(java.awt.Paint paint)
RenderChangeEvent
事件.
paint
- Paint paint对象 (可为null).
public java.awt.Paint getLabelOutlinePaint()
public void setLabelOutlinePaint(java.awt.Paint paint)
RenderChangeEvent
事件.
paint
- Paint paint对象 (可为null).
public java.awt.Stroke getLabelOutlineStroke()
public void setLabelOutlineStroke(java.awt.Stroke stroke)
RenderChangeEvent
事件.
stroke
- Stroke stroke对象 (可为null).
public java.awt.Paint getLabelShadowPaint()
public void setLabelShadowPaint(java.awt.Paint paint)
RenderChangeEvent
事件.
paint
- Paintpublic boolean isLabelInPie()
public void setLabelInPie(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public RectangleInsets getLabelPadding()
public void setLabelPadding(RectangleInsets padding)
RenderChangeEvent
事件.
padding
- RectangleInsets 补白 (不可为null).
public double getMaximumLabelWidth()
public void setMaximumLabelWidth(double maximumWidth)
RenderChangeEvent
事件.
maximumWidth
- double 宽度,必须>0.
public double getLabelGap()
public void setLabelGap(double gap)
RenderChangeEvent
事件.
gap
- double double 空白,必须>=0.
public boolean isLabelLinksVisible()
public void setLabelLinksVisible(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public double getLabelLinkMargin()
public void setLabelLinkMargin(double margin)
RenderChangeEvent
事件.
margin
- double 空白,必须>=0.
public java.awt.Paint getLabelLinkPaint()
public void setLabelLinkPaint(java.awt.Paint paint)
RenderChangeEvent
事件.
paint
- Paint paint对象 (不可为null).
public java.awt.Stroke getLabelLinkStroke()
public void setLabelLinkStroke(java.awt.Stroke stroke)
RenderChangeEvent
事件.
stroke
- Stroke stroke对象.
public boolean isSimpleLabels()
public void setSimpleLabels(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public double getMinimumArcAngleToDraw()
public void setMinimumArcAngleToDraw(double angle)
RenderChangeEvent
事件.
angle
- double 角度,必须>=0.
public boolean isPie3D()
public void setPie3D(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public double getDepth3D()
public void setDepth3D(double depth3D)
RenderChangeEvent
事件.
depth3D
- double 深度.
public boolean isDrawAsRing()
public void setDrawAsRing(boolean flag)
RenderChangeEvent
事件.
flag
- boolean 布尔值.
public double getRingLengthFactor()
public void setRingLengthFactor(double factor)
RenderChangeEvent
事件.
factor
- double 长度因子,属于区间(0,1].
public void drawAllItems(java.awt.geom.Rectangle2D dataArea, RenderShapeCollection renderShapes, float alpha)
drawAllItems
in class AbstractNoAxisRender
dataArea
- Rectangle2D 数据区域 (不可为null).
renderShapes
- RenderShapeCollection render图形集合 (不可为null).
alpha
- float alpha值,须属于闭区间[0.0,1.0].
protected java.awt.geom.Rectangle2D getArcBounds(java.awt.geom.Rectangle2D unexploded, double startAngle, double extent, double explodePercent)
unexploded
- 在内部绘制未偏移的扇形的矩形.
startAngle
- 开始的角度.
extent
- 扇形的扩展角度.
explodePercent
- 偏离圆心的百分比.
protected IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect, java.lang.String text, java.lang.Object appendParam)
createItemShapeOnly
in class AbstractRender
rect
- Rectangle2D 柱形图的矩形 (不可为null).
text
- String 要显示的文字 (可为null).
appendParam
- Object 附加的参数,用于传递额外的对象 (可为null).
public void drawBackground(java.awt.geom.Rectangle2D dataArea, ChartOrientation orientation, RenderShapeCollection renderShapes)
drawBackground
in interface IRender
drawBackground
in class AbstractRender
dataArea
- Rectangle2D 数据区域 (不可为null).
orientation
- ChartOrientation 图表绘制方向 (不可为null).
renderShapes
- RenderShapeCollection render图形集合 (不可为null).
public double getMaximumExplodePercent()
protected void drawLabels(double totalValue, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D pieArea, java.awt.geom.Rectangle2D linkArea, RenderShapeCollection renderShapes)
totalValue
- double 饼图数据集的所有数据的和.
dataArea
- Rectangle2D 数据区域.
pieArea
- Rectangle2D 饼图区域.
linkArea
- Rectangle2D 包含外部标签的区域.
renderShapes
- RenderShapeCollection render图形集合.
protected void drawLeftLabels(java.util.Hashtable leftKeys, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D linkArea, java.awt.geom.Rectangle2D pieArea, RenderShapeCollection renderShapes)
leftKeys
- Hashtable 左边的标签对象.
dataArea
- Rectangle2D 数据区域.
linkArea
- Rectangle2D 包含外部标签的区域.
pieArea
- Rectangle2D 饼图区域.
renderShapes
- RenderShapeCollection render图形集合.
protected void drawRightLabels(java.util.Hashtable rightKeys, java.awt.geom.Rectangle2D dataArea, java.awt.geom.Rectangle2D linkArea, java.awt.geom.Rectangle2D pieArea, RenderShapeCollection renderShapes)
rightKeys
- Hashtable 左边的标签对象.
dataArea
- Rectangle2D 数据区域.
linkArea
- Rectangle2D 包含外部标签的区域.
pieArea
- Rectangle2D 饼图区域.
renderShapes
- RenderShapeCollection render图形集合.
public boolean equals(java.lang.Object obj)
equals
in class AbstractNoAxisRender
obj
- the object (null permitted).
public int hashCode()
hashCode
in class AbstractNoAxisRender
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class AbstractNoAxisRender
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.public java.lang.String toString()
toString
in class AbstractNoAxisRender
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |