com.ijchart.xychart.shape
Class AbstractChartShape

java.lang.Object
  extended by com.ijchart.xychart.shape.AbstractChartShape
All Implemented Interfaces:
IChartShapeChangeListener, IChartShape, java.io.Serializable, java.lang.Cloneable, java.util.EventListener
Direct Known Subclasses:
AbstractImageChartShape, AbstractTextChartShape, ErrorCrossChartShape, IShapedChartShape, LegendItemChartShape, LineChartShape, MeterArcChartShape, MinMaxChartShape, PaintScaleLegendChartShape

public abstract class AbstractChartShape
extends java.lang.Object
implements IChartShape, java.lang.Cloneable, java.io.Serializable, IChartShapeChangeListener

Title: IJChart

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

提供IChartShape的抽象实现.

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 ChartShapeDrawType DEFAULT_DRAW_TYPE
          缺省的图形在chart中的绘制类型.
static int DEFAULT_SHAPE_ID
          缺省的图形的序列号.
static boolean DEFAULT_VISIBLE
          缺省是否可见.
protected  java.awt.Shape transformedShape
          用于计算是否包含某个点的图形.
 
Fields inherited from interface com.ijchart.xychart.shape.IChartShape
DEFAULT_BORDER_PAINT, DEFAULT_BORDER_STROKE, DEFAULT_CONTENT_PAINT, DEFAULT_DRAW_BORDER, DEFAULT_FILL_ALPHA, DEFAULT_FILL_PAINT, DEFAULT_FILL_SHAPE, DEFAULT_GRADIENT_PAINT_TRANSFORM_TYPE, DEFAULT_MARGIN, DEFAULT_SELECT_FILL_PAINT, DEFAULT_SELECT_RECT_ALPHA, DEFAULT_SELECT_RECT_WIDTH, DEFAULT_SELECTED, DEFAULT_TEXT_FONT, DEFAULT_TOOLTIP_SHAPE_WIDTH, HOTSPOT_TYPE_CIRCLE, HOTSPOT_TYPE_POLYGON, HOTSPOT_TYPE_RECTANGLE
 
Constructor Summary
protected AbstractChartShape()
          没有参数的构造器.
 
Method Summary
 void addChangeListener(IChartShapeChangeListener listener)
          注册监听图形IChartShape对象变化的监听者对象.
protected  void afterDraw(java.awt.Graphics2D g2)
          调用IShapeChange的afterDraw方法.
protected  void beforeDraw(java.awt.Graphics2D g2)
          调用IShapeChange的beforeDraw方法.
protected abstract  void calculateTransformedShape()
          计算变换后的图形.
 void chartShapeChanged(ChartShapeChangeEvent event)
          接收到图形对象变化的通知.
 java.lang.Object clone()
          返回克隆的对象.
 boolean contains(double x, double y)
          返回点(x,y)是否包含在图形中,如果线宽小于3,线宽会被扩大至3.
 boolean contains(java.awt.geom.Point2D point)
          返回点point是否包含在图形中.
protected  void drawAnchorByPoints(java.awt.Graphics2D g2, double translateX, double translateY, java.awt.geom.Point2D.Double[] points)
          根据点的坐标绘制锚点.
protected  void drawBackground(java.awt.Graphics2D g2, java.awt.Shape drawArea)
          绘制背景.
protected  void drawBorder(java.awt.Graphics2D g2, java.awt.Shape drawArea)
          绘制外边框.
protected abstract  void drawSelect(java.awt.Graphics2D g2)
          在图形设备(如屏幕或打印机)上绘制图形的选中部分,因为图形可能会有重叠,所以绘制图形时要先绘制完所有的图形后, 再调用此方法绘制选中部分.
protected  void drawShapeBorder(java.awt.Graphics2D g2, java.awt.Shape shape)
          绘制图形边框.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
protected  void fillShape(java.awt.Graphics2D g2, java.awt.Paint fillPaint, java.awt.Shape shape)
          填充图形.
protected  void fireChartShapeChanged()
          通过所有监听器图形发生了变化.
 void forceChartShapeChanged()
          如果图形对象的内部被改变,而又不能触发事件,可以通过此方法通知图形对象发生改变.
 java.awt.Paint getBorderPaint()
          返回外轮廓线Paint.
 java.awt.Stroke getBorderStroke()
          返回外轮廓线画笔.
 java.awt.geom.Rectangle2D getBound()
          返回图形的外边框.
 IChartData getData()
          返回IChartData对象.
 float getFillAlpha()
          返回填充背景的alpha值.
 java.awt.Paint getFillPaint()
          返回图形内部的填充颜色.
 GradientPaintTransformType getGradientPaintTransformType()
          返回设置图形内部颜色扩展的类型.
 java.lang.String getHotspotPolyCoords(java.awt.Shape parentClipArea)
          返回形成热点的坐标点.
protected abstract  java.awt.Shape getHotspotShape()
          返回热点图形.
 java.lang.String getHotspotType()
          返回形成热点的图形类型.
protected  java.lang.String getHotspotType(java.awt.Shape shape)
          返回形成热点的图形类型.
 int getId()
          返回图形的编号.
 java.awt.geom.Point2D getLockPoint()
          返回鼠标点击时锁定图形的点.
 RectangleInsets getMargin()
          返回字符的边框之后的空白.
 java.awt.Shape getOriginTooltipShape()
          返回原始的tooltip区域图形,此图形没有考虑旋转等因素对图形的影响.
 double getRotate()
          返回图形环境旋转角度,单位为弧度.
 java.awt.Paint getSelectAnchorPaint()
          返回图形选中时锚点的Paint.
 float getSelectRectAlpha()
          返回选中图形时所绘制锚点的Alpha值.
 double getSelectRectWidth()
          返回选中图形时所绘制锚点的宽度.
 IShapeChange getShapeChange()
          返回IShapeChange对象.
 ChartShapeDrawType getShapeDrawType()
          返回图形在chart中的绘制类型.
 java.awt.Shape getTooltipShape()
          返回tooltip区域图形,此图形需要考虑旋转等因素对图形的影响.
protected  double getTooltipShapeRotate()
          返回tooltip图形应该旋转的角度.
protected  java.awt.geom.Point2D getTooltipShapeTranslatePoint()
          返回tooltip图形应该偏移的位置.
 java.lang.String getTooltipText()
          返回tooltip字符串.
 java.lang.String getURL()
          返回URL字符串.
 int hashCode()
          计算对象的hashcode值.
 boolean hasListener(IChartShapeChangeListener listener)
          返回指定的listener是否存在,本方法主要用于单元测试.
 boolean isFillShape()
          返回轮廓线是否绘制的标志.
 boolean isSelected()
          返回图形是否被选中.
 boolean isVisible()
          返回图形是否可见.
protected  void notifyListeners(ChartShapeChangeEvent event)
          通知所有注册的监听器图形发生了变化.
 void removeAllChangeListener()
          清除所有的图形IChartShape对象变化监听者对象.
 void removeChangeListener(IChartShapeChangeListener listener)
          删除注册的图形IChartShape对象变化监听者对象.
 void setBorderPaint(java.awt.Paint paint)
          设置图形外轮廓线的Paint,并向所有监听器发送ChartShapeChangeEvent事件.
 void setBorderStroke(java.awt.Stroke stroke)
          设置图形外轮廓线的画笔,并向所有监听器发送ChartShapeChangeEvent事件.
 void setData(IChartData data)
          设置IChartData对象,并向所有监听器发送ChartShapeChangeEvent事件.
 void setDrawBorder(boolean flag)
          是否绘制图形的外轮廓线,并向所有监听器发送ChartShapeChangeEvent事件.
 void setFillAlpha(float alpha)
          设置填充背景的alpha值,并向所有监听器发送ChartShapeChangeEvent事件.
 void setFillPaint(java.awt.Paint paint)
          设置图形内部的填充颜色,并向所有监听器发送ChartShapeChangeEvent事件.
 void setFillShape(boolean bFillShape)
          是否填充图形内部,并向所有监听器发送ChartShapeChangeEvent事件.
 void setGradientPaintTransformType(GradientPaintTransformType transformType)
          设置图形内部的颜色扩展类型,仅当填充所用Paint为GradientPaint, 并向所有监听器发送ChartShapeChangeEvent事件.
 void setId(int shapeId)
          设置图形的编号,在一个chart中,图形的ID是唯一且连续的.
 void setMargin(RectangleInsets margin)
          设置字符的边框之后的空白,并向所有监听器发送ChartShapeChangeEvent事件.
 void setOriginTooltipShape(java.awt.Shape shape)
          设置原始的tooltip区域图形.
 void setRotate(double theta)
          设置图形环境旋转角度,单位为弧度,并向所有监听器发送ChartShapeChangeEvent事件.
 void setSelectAnchorPaint(java.awt.Paint selectAnchorPaint)
          设置图形选中时锚点的Paint,并向所有监听器发送ChartShapeChangeEvent事件.
 void setSelected(boolean flag)
          设置图形是否被选中,并向所有监听器发送ChartShapeChangeEvent事件.
 void setSelectRectAlpha(float selectRectAlpha)
          设置选中图形时所绘制锚点的Alpha值,并向所有监听器发送ChartShapeChangeEvent事件.
 void setSelectRectWidth(double width)
          设置选中图形时所绘制锚点的宽度,并向所有监听器发送ChartShapeChangeEvent事件.
 void setShapeChange(IShapeChange change)
          设置IShapeChange对象.
 void setShapeDrawType(ChartShapeDrawType drawType)
          设置图形在chart中的绘制类型,并向所有监听器发送ChartShapeChangeEvent事件.
 void setTooltipText(java.lang.String tooltip)
          设置tooltip字符串.
 void setURL(java.lang.String url)
          设置URL字符串.
 void setVisible(boolean flag)
          设置图形是否可见,并向所有监听器发送ChartShapeChangeEvent事件.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.ijchart.xychart.shape.IChartShape
draw, getShapeType, getTopLeftPoint, translate
 

Field Detail

DEFAULT_SHAPE_ID

public static final int DEFAULT_SHAPE_ID
缺省的图形的序列号.

See Also:
Constant Field Values

DEFAULT_DRAW_TYPE

public static final ChartShapeDrawType DEFAULT_DRAW_TYPE
缺省的图形在chart中的绘制类型.


DEFAULT_VISIBLE

public static final boolean DEFAULT_VISIBLE
缺省是否可见.

See Also:
Constant Field Values

transformedShape

protected transient java.awt.Shape transformedShape
用于计算是否包含某个点的图形.

Constructor Detail

AbstractChartShape

protected AbstractChartShape()
没有参数的构造器.

Method Detail

setId

public void setId(int shapeId)
设置图形的编号,在一个chart中,图形的ID是唯一且连续的.

Specified by:
setId in interface IChartShape
Parameters:
shapeId - int

getId

public int getId()
返回图形的编号.

Specified by:
getId in interface IChartShape
Returns:
int 图形的编号.

getFillPaint

public java.awt.Paint getFillPaint()
返回图形内部的填充颜色.

Specified by:
getFillPaint in interface IChartShape
Returns:
Paint 图形内部的填充颜色.

getGradientPaintTransformType

public GradientPaintTransformType getGradientPaintTransformType()
返回设置图形内部颜色扩展的类型.

Specified by:
getGradientPaintTransformType in interface IChartShape
Returns:
GradientPaintTransformType

getBorderPaint

public java.awt.Paint getBorderPaint()
返回外轮廓线Paint.

Specified by:
getBorderPaint in interface IChartShape
Returns:
Paint 外轮廓线Paint.

getBorderStroke

public java.awt.Stroke getBorderStroke()
返回外轮廓线画笔.

Specified by:
getBorderStroke in interface IChartShape
Returns:
Stroke 外轮廓线画笔.

isDrawBorder

public boolean isDrawBorder()
返回轮廓线是否绘制的标志.

Specified by:
isDrawBorder in interface IChartShape
Returns:
boolean 是返回true,否则返回false.

isFillShape

public boolean isFillShape()
返回轮廓线是否绘制的标志.

Specified by:
isFillShape in interface IChartShape
Returns:
boolean 是返回true,否则返回false.

setDrawBorder

public void setDrawBorder(boolean flag)
是否绘制图形的外轮廓线,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setDrawBorder in interface IChartShape
Parameters:
flag - boolean true绘制外轮廓线,false不绘制轮廓线.

setFillPaint

public void setFillPaint(java.awt.Paint paint)
设置图形内部的填充颜色,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setFillPaint in interface IChartShape
Parameters:
paint - Paint 填充图形内部用的Paint(不可为null).

setFillShape

public void setFillShape(boolean bFillShape)
是否填充图形内部,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setFillShape in interface IChartShape
Parameters:
bFillShape - boolean true填充图形内部,false不填充图形内部.

setGradientPaintTransformType

public void setGradientPaintTransformType(GradientPaintTransformType transformType)
设置图形内部的颜色扩展类型,仅当填充所用Paint为GradientPaint, 并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setGradientPaintTransformType in interface IChartShape
Parameters:
transformType - GradientPaintTransformType 渐变填充变换类型 (可为null).

setBorderPaint

public void setBorderPaint(java.awt.Paint paint)
设置图形外轮廓线的Paint,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setBorderPaint in interface IChartShape
Parameters:
paint - Paint 图形外轮廓线Paint(不可为null).

setBorderStroke

public void setBorderStroke(java.awt.Stroke stroke)
设置图形外轮廓线的画笔,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setBorderStroke in interface IChartShape
Parameters:
stroke - Stroke 图形外轮廓线画笔(不可为null).

setRotate

public void setRotate(double theta)
设置图形环境旋转角度,单位为弧度,并向所有监听器发送ChartShapeChangeEvent事件. 仿射变换可以用下面的矩阵表示:
                [   cos(theta)    -sin(theta)    0   ]
                [   sin(theta)     cos(theta)    0   ]
                [       0              0         1   ]
 
.

Specified by:
setRotate in interface IChartShape
Parameters:
theta - 旋转的角度,单位为弧度.

setSelected

public void setSelected(boolean flag)
设置图形是否被选中,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setSelected in interface IChartShape
Parameters:
flag - boolean 布尔值.

getRotate

public double getRotate()
返回图形环境旋转角度,单位为弧度.

Specified by:
getRotate in interface IChartShape
Returns:
double 图形环境旋转角度,单位为弧度.

isSelected

public boolean isSelected()
返回图形是否被选中.

Specified by:
isSelected in interface IChartShape
Returns:
boolean 布尔值.

getOriginTooltipShape

public java.awt.Shape getOriginTooltipShape()
返回原始的tooltip区域图形,此图形没有考虑旋转等因素对图形的影响.

Specified by:
getOriginTooltipShape in interface IChartShape
Returns:
Shape 图形 (可为null).

setOriginTooltipShape

public void setOriginTooltipShape(java.awt.Shape shape)
设置原始的tooltip区域图形.

Specified by:
setOriginTooltipShape in interface IChartShape
Parameters:
shape - Shape 图形 (可为null).

getTooltipShape

public java.awt.Shape getTooltipShape()
返回tooltip区域图形,此图形需要考虑旋转等因素对图形的影响.

Specified by:
getTooltipShape in interface IChartShape
Returns:
Shape 图形 (可为null).

getTooltipShapeTranslatePoint

protected java.awt.geom.Point2D getTooltipShapeTranslatePoint()
返回tooltip图形应该偏移的位置.

Returns:
Point2D 坐标 (可为null).

getTooltipShapeRotate

protected double getTooltipShapeRotate()
返回tooltip图形应该旋转的角度.

Returns:
double 角度(单位是弧度).

setSelectRectWidth

public void setSelectRectWidth(double width)
设置选中图形时所绘制锚点的宽度,并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
width - double 宽度,须大于0.

setSelectAnchorPaint

public void setSelectAnchorPaint(java.awt.Paint selectAnchorPaint)
设置图形选中时锚点的Paint,并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
selectAnchorPaint - Paint 不可为null.

getSelectRectWidth

public double getSelectRectWidth()
返回选中图形时所绘制锚点的宽度.

Returns:
double 宽度,须大于0.

getSelectAnchorPaint

public java.awt.Paint getSelectAnchorPaint()
返回图形选中时锚点的Paint.

Returns:
Paint

contains

public boolean contains(java.awt.geom.Point2D point)
返回点point是否包含在图形中.

Specified by:
contains in interface IChartShape
Parameters:
point - Point2D 坐标值,例如鼠标坐标.(不可为null).
Returns:
boolean 包含该坐标则返回true,否则返回false.

contains

public boolean contains(double x,
                        double y)
返回点(x,y)是否包含在图形中,如果线宽小于3,线宽会被扩大至3.

Specified by:
contains in interface IChartShape
Parameters:
x - double (x坐标位置).
y - double (y坐标位置).
Returns:
boolean 包含该坐标则返回true,否则返回false.

calculateTransformedShape

protected abstract void calculateTransformedShape()
计算变换后的图形.


setMargin

public void setMargin(RectangleInsets margin)
设置字符的边框之后的空白,并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
margin - RectangleInsets 字符的边框之后的空白 (不可为null).

getMargin

public RectangleInsets getMargin()
返回字符的边框之后的空白.

Returns:
RectangleInsets 字符的边框之后的空白.

setSelectRectAlpha

public void setSelectRectAlpha(float selectRectAlpha)
设置选中图形时所绘制锚点的Alpha值,并向所有监听器发送ChartShapeChangeEvent事件.

Parameters:
selectRectAlpha - float Alpha值,介于闭区间[0.0,1.0]的浮点数.

getSelectRectAlpha

public float getSelectRectAlpha()
返回选中图形时所绘制锚点的Alpha值.

Returns:
float Alpha值,介于闭区间[0.0,1.0]的浮点数.

setFillAlpha

public void setFillAlpha(float alpha)
设置填充背景的alpha值,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setFillAlpha in interface IChartShape
Parameters:
alpha - float alpha值,须属于闭区间[0.0,1.0].

getFillAlpha

public float getFillAlpha()
返回填充背景的alpha值.

Specified by:
getFillAlpha in interface IChartShape
Returns:
float alpha值.

setTooltipText

public void setTooltipText(java.lang.String tooltip)
设置tooltip字符串.

Specified by:
setTooltipText in interface IChartShape
Parameters:
tooltip - String tooltip字符串 (可为null).

getTooltipText

public java.lang.String getTooltipText()
返回tooltip字符串.

Specified by:
getTooltipText in interface IChartShape
Returns:
String tooltip字符串 (可为null).

setURL

public void setURL(java.lang.String url)
设置URL字符串.

Specified by:
setURL in interface IChartShape
Parameters:
url - String URL字符串 (可为null).

getURL

public java.lang.String getURL()
返回URL字符串.

Specified by:
getURL in interface IChartShape
Returns:
String URL字符串 (可为null).

getBound

public java.awt.geom.Rectangle2D getBound()
返回图形的外边框.

Specified by:
getBound in interface IChartShape
Returns:
Rectangle2D 外边框.

drawBackground

protected void drawBackground(java.awt.Graphics2D g2,
                              java.awt.Shape drawArea)
绘制背景.

Parameters:
g2 - Graphics2D 图形环境.
drawArea - Shape 绘制范围.

drawBorder

protected void drawBorder(java.awt.Graphics2D g2,
                          java.awt.Shape drawArea)
绘制外边框.

Parameters:
g2 - Graphics2D 图形环境.
drawArea - Shape 绘制范围.

getLockPoint

public java.awt.geom.Point2D getLockPoint()
返回鼠标点击时锁定图形的点.

Specified by:
getLockPoint in interface IChartShape
Returns:
Point2D 坐标值.

getData

public IChartData getData()
返回IChartData对象.

Specified by:
getData in interface IChartShape
Returns:
IChartData (可为null).

setData

public void setData(IChartData data)
设置IChartData对象,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setData in interface IChartShape
Parameters:
data - IChartData (可为null).

isVisible

public boolean isVisible()
返回图形是否可见.

Specified by:
isVisible in interface IChartShape
Returns:
boolean 布尔值.

setVisible

public void setVisible(boolean flag)
设置图形是否可见,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setVisible in interface IChartShape
Parameters:
flag - boolean 布尔值.

getShapeDrawType

public ChartShapeDrawType getShapeDrawType()
返回图形在chart中的绘制类型.

Specified by:
getShapeDrawType in interface IChartShape
Returns:
ChartShapeDrawType (不为null).

setShapeDrawType

public void setShapeDrawType(ChartShapeDrawType drawType)
设置图形在chart中的绘制类型,并向所有监听器发送ChartShapeChangeEvent事件.

Specified by:
setShapeDrawType in interface IChartShape
Parameters:
drawType - ChartShapeDrawType (null not permitted).

addChangeListener

public void addChangeListener(IChartShapeChangeListener listener)
注册监听图形IChartShape对象变化的监听者对象.

Specified by:
addChangeListener in interface IChartShape
Parameters:
listener - 注册的监听器对象.

removeChangeListener

public void removeChangeListener(IChartShapeChangeListener listener)
删除注册的图形IChartShape对象变化监听者对象.

Specified by:
removeChangeListener in interface IChartShape
Parameters:
listener - 要删除的监听者对象.

removeAllChangeListener

public void removeAllChangeListener()
清除所有的图形IChartShape对象变化监听者对象.

Specified by:
removeAllChangeListener in interface IChartShape

hasListener

public boolean hasListener(IChartShapeChangeListener listener)
返回指定的listener是否存在,本方法主要用于单元测试.

Parameters:
listener - 要测试的监听器.
Returns:
A boolean.

forceChartShapeChanged

public void forceChartShapeChanged()
如果图形对象的内部被改变,而又不能触发事件,可以通过此方法通知图形对象发生改变.

Specified by:
forceChartShapeChanged in interface IChartShape

chartShapeChanged

public void chartShapeChanged(ChartShapeChangeEvent event)
接收到图形对象变化的通知.

Specified by:
chartShapeChanged in interface IChartShapeChangeListener
Parameters:
event - 描述图形对象变化的对象.

setShapeChange

public void setShapeChange(IShapeChange change)
设置IShapeChange对象.

Specified by:
setShapeChange in interface IChartShape
Parameters:
change - IShapeChange IShapeChange对象 (可为null).

getHotspotPolyCoords

public java.lang.String getHotspotPolyCoords(java.awt.Shape parentClipArea)
返回形成热点的坐标点.

Specified by:
getHotspotPolyCoords in interface IChartShape
Parameters:
parentClipArea - Shape 图形剪切区域 (可为null).
Returns:
String 热点坐标 (可为null).

getHotspotType

public java.lang.String getHotspotType()
返回形成热点的图形类型.

Specified by:
getHotspotType in interface IChartShape
Returns:
String 图形类型,返回值是poly或rect.

getHotspotShape

protected abstract java.awt.Shape getHotspotShape()
返回热点图形.

Returns:
Shape 热点图形 (可为null).

getShapeChange

public IShapeChange getShapeChange()
返回IShapeChange对象.

Specified by:
getShapeChange in interface IChartShape
Returns:
IShapeChange IShapeChange对象 (可为null).

drawSelect

protected abstract void drawSelect(java.awt.Graphics2D g2)
在图形设备(如屏幕或打印机)上绘制图形的选中部分,因为图形可能会有重叠,所以绘制图形时要先绘制完所有的图形后, 再调用此方法绘制选中部分.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null)

fireChartShapeChanged

protected void fireChartShapeChanged()
通过所有监听器图形发生了变化.


notifyListeners

protected void notifyListeners(ChartShapeChangeEvent event)
通知所有注册的监听器图形发生了变化.

Parameters:
event - 触发监听器的事件.

drawAnchorByPoints

protected void drawAnchorByPoints(java.awt.Graphics2D g2,
                                  double translateX,
                                  double translateY,
                                  java.awt.geom.Point2D.Double[] points)
根据点的坐标绘制锚点.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).
translateX - double x偏移值,其它坐标的点都是相对这个坐标.
translateY - double y偏移值,其它坐标的点都是相对这个坐标.
points - Double[] 绘制锚点的坐标值.

fillShape

protected void fillShape(java.awt.Graphics2D g2,
                         java.awt.Paint fillPaint,
                         java.awt.Shape shape)
填充图形.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).
fillPaint - Paint 填充用的paint (不可为null).
shape - Shape 要填充的图形 (不可为null).

drawShapeBorder

protected void drawShapeBorder(java.awt.Graphics2D g2,
                               java.awt.Shape shape)
绘制图形边框.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).
shape - Shape 要填充的图形 (不可为null).

beforeDraw

protected void beforeDraw(java.awt.Graphics2D g2)
调用IShapeChange的beforeDraw方法.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).

afterDraw

protected void afterDraw(java.awt.Graphics2D g2)
调用IShapeChange的afterDraw方法.

Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).

getHotspotType

protected java.lang.String getHotspotType(java.awt.Shape shape)
返回形成热点的图形类型.

Parameters:
shape - Shape 图形 (可为null).
Returns:
String 图形类型,返回值是circ或poly或rect.

equals

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

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

hashCode

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

Overrides:
hashCode in class java.lang.Object
Returns:
int 对象的hashcode值.

clone

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

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