com.ijchart.xychart.render.xy
Class XYShapeRender

java.lang.Object
  extended by com.ijchart.xychart.render.AbstractRender
      extended by com.ijchart.xychart.render.AbstractWithAxisRender
          extended by com.ijchart.xychart.render.xy.AbstractXYRender
              extended by com.ijchart.xychart.render.xy.XYShapeRender
All Implemented Interfaces:
IDatasetChangeListener, IRender, IRenderWithAxis, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class XYShapeRender
extends AbstractXYRender
implements java.lang.Cloneable, java.io.Serializable

Title: IJChart

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

数据集里的每个数据是XYZNumberChartData对象,根据(x,y)的值确定位置, 根据z的值确定颜色.

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 java.awt.Paint DEFAULT_GUIDE_LINE_PAINT
          缺省绘制向导线的paint.
static java.awt.Stroke DEFAULT_GUIDE_LINE_STROKE
          缺省绘制向导线的stroke.
static boolean DEFAULT_GUIDE_LINE_VISIBLE
          缺省向导线是否可见.
static java.lang.String DEFAULT_LEGEND_LABEL
          缺省的图形标签.
static IPaintScale DEFAULT_PAINT_SCALE
          缺省的IPaintScale的对象.
 
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
XYShapeRender(IMatrixDataset dataset)
          构造器.
XYShapeRender(IMatrixDataset dataset, IPaintScale paintScale, java.lang.String legendLabel)
          构造器.
XYShapeRender(IMatrixDataset dataset, java.lang.String legendLabel)
          构造器.
 
Method Summary
 java.lang.Object clone()
          返回克隆的对象.
protected  IChartShape createItemShapeOnly(java.awt.geom.Rectangle2D rect, java.lang.String text, java.lang.Object appendParam)
          只创建图形,不设置图形的属性.
 void drawAllItems(AbstractValueAxis xAxis, RectangleEdge xAxisEdge, AbstractValueAxis yAxis, RectangleEdge yAxisEdge, java.awt.geom.Rectangle2D dataArea, ChartOrientation orientation, RenderShapeCollection renderShapes, float alpha)
          绘制所有的图形.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
 java.awt.Paint getGuideLinePaint()
          返回绘制向导线的paint.
 java.awt.Stroke getGuideLineStroke()
          返回绘制向导线的stroke.
protected  int getLegendItemCount()
          返回图例的个数.
protected  java.lang.String[] getLegendItemLabels()
          返回图例图形的标签数组.
protected  IChartShape[] getLegendItemShapes(int legendCount)
          返回每个图例的图形.
 java.lang.String getLegendLabel()
          返回图例标签.
 IPaintScale getPaintScale()
          返回IPaintScale的对象.
 int hashCode()
          计算对象的hashcode值.
 boolean isGuideLineVisible()
          返回向导线是否可见.
 void setGuideLinePaint(java.awt.Paint paint)
          设置绘制向导线的paint,并向所有监听器发送 RenderChangeEvent事件.
 void setGuideLineStroke(java.awt.Stroke stroke)
          设置绘制向导线的stroke,并向所有监听器发送 RenderChangeEvent事件.
 void setGuideLineVisible(boolean flag)
          设置向导线是否可见,并向所有监听器发送 RenderChangeEvent事件.
 void setLegendLabel(java.lang.String label)
          图例标签.
 void setPaintScale(IPaintScale paintScale)
          设置IPaintScale的对象,并向所有监听器发送RenderChangeEvent 事件.
 java.lang.String toString()
          覆盖toString方法.
 
Methods inherited from class com.ijchart.xychart.render.xy.AbstractXYRender
addAnnotation, drawAllAnnotation, getAllAnnotations, removeAllAnnotation
 
Methods inherited from class com.ijchart.xychart.render.AbstractWithAxisRender
createItemShape, createValueMarkerShape, drawIntervalValueMarker, drawValueMarker, getValueAxisOffsetType
 
Methods inherited from class com.ijchart.xychart.render.AbstractRender
add3DShapes, addChangeListener, calculateLegendItemShapes, datasetChanged, drawBackground, 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, getLegendItemLabelsByColumn, getLegendItemLabelsByRow, 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, drawBackground, 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_PAINT_SCALE

public static final IPaintScale DEFAULT_PAINT_SCALE
缺省的IPaintScale的对象.


DEFAULT_LEGEND_LABEL

public static final java.lang.String DEFAULT_LEGEND_LABEL
缺省的图形标签.

See Also:
Constant Field Values

DEFAULT_GUIDE_LINE_VISIBLE

public static final boolean DEFAULT_GUIDE_LINE_VISIBLE
缺省向导线是否可见.

See Also:
Constant Field Values

DEFAULT_GUIDE_LINE_PAINT

public static final java.awt.Paint DEFAULT_GUIDE_LINE_PAINT
缺省绘制向导线的paint.


DEFAULT_GUIDE_LINE_STROKE

public static final java.awt.Stroke DEFAULT_GUIDE_LINE_STROKE
缺省绘制向导线的stroke.

Constructor Detail

XYShapeRender

public XYShapeRender(IMatrixDataset dataset)
构造器.

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

XYShapeRender

public XYShapeRender(IMatrixDataset dataset,
                     java.lang.String legendLabel)
构造器.

Parameters:
dataset - SingleRowDataset 数据集 (不可为null).
legendLabel - String 图例标签.

XYShapeRender

public XYShapeRender(IMatrixDataset dataset,
                     IPaintScale paintScale,
                     java.lang.String legendLabel)
构造器.

Parameters:
dataset - SingleRowDataset 数据集 (不可为null).
paintScale - IPaintScale对象.
legendLabel - String 图例标签.
Method Detail

isGuideLineVisible

public boolean isGuideLineVisible()
返回向导线是否可见.

Returns:
boolean 布尔值.

setGuideLineVisible

public void setGuideLineVisible(boolean flag)
设置向导线是否可见,并向所有监听器发送 RenderChangeEvent事件.

Parameters:
flag - boolean 布尔值.

getGuideLinePaint

public java.awt.Paint getGuideLinePaint()
返回绘制向导线的paint.

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

setGuideLinePaint

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

Parameters:
paint - Paint 绘制向导线的paint (不可为null).

getGuideLineStroke

public java.awt.Stroke getGuideLineStroke()
返回绘制向导线的stroke.

Returns:
Stroke stroke对象 (不为null).

setGuideLineStroke

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

Parameters:
stroke - Stroke 绘制向导线的stroke (不可为null).

getPaintScale

public IPaintScale getPaintScale()
返回IPaintScale的对象.

Returns:
IPaintScale IPaintScale的对象.

setPaintScale

public void setPaintScale(IPaintScale paintScale)
设置IPaintScale的对象,并向所有监听器发送RenderChangeEvent 事件.

Parameters:
paintScale - IPaintScale IPaintScale的对象.

getLegendLabel

public java.lang.String getLegendLabel()
返回图例标签.

Returns:
String 图例标签 (可为null).

setLegendLabel

public void setLegendLabel(java.lang.String label)
图例标签.

Parameters:
label - String 图例标签 (可为null).

drawAllItems

public void drawAllItems(AbstractValueAxis xAxis,
                         RectangleEdge xAxisEdge,
                         AbstractValueAxis yAxis,
                         RectangleEdge yAxisEdge,
                         java.awt.geom.Rectangle2D dataArea,
                         ChartOrientation orientation,
                         RenderShapeCollection renderShapes,
                         float alpha)
绘制所有的图形.

Specified by:
drawAllItems in class AbstractXYRender
Parameters:
xAxis - AbstractValueAxis x数值坐标轴 (不可为null).
xAxisEdge - RectangleEdge x坐标轴位置(不可为null).
yAxis - AbstractValueAxis y数值坐标轴 (不可为null).
yAxisEdge - RectangleEdge y坐标轴位置 (不可为null).
dataArea - Rectangle2D 数据区域 (不可为null).
orientation - ChartOrientation 图表的方向 (不可为null).
renderShapes - RenderShapeCollection render图形集合 (不可为null).
alpha - float alpha值,须属于闭区间[0.0,1.0].

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 图形.

getLegendItemCount

protected int getLegendItemCount()
返回图例的个数.

Overrides:
getLegendItemCount in class AbstractRender
Returns:
int 图例的个数.

getLegendItemLabels

protected java.lang.String[] getLegendItemLabels()
返回图例图形的标签数组.

Overrides:
getLegendItemLabels in class AbstractRender
Returns:
String[] 标签对象数组

getLegendItemShapes

protected IChartShape[] getLegendItemShapes(int legendCount)
返回每个图例的图形.

Overrides:
getLegendItemShapes in class AbstractRender
Parameters:
legendCount - int 图例的个数.
Returns:
IChartShape[] 图形数组.

equals

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

Overrides:
equals in class AbstractXYRender
Parameters:
obj - 要比较的对象
Returns:
相等返回true,否则返回false.

hashCode

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

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

clone

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

Overrides:
clone in class AbstractXYRender
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. java.lang.Cloneable

toString

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

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