|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.ijchart.xychart.shape.AbstractChartShape
public abstract class AbstractChartShape
Title: IJChart
Description: a chart library for the Java(tm) platform.
提供IChartShape
的抽象实现.
Copyright: Copyright (c) 2013
Company:
Field Summary | |
---|---|
static ChartShapeDrawType |
DEFAULT_DRAW_TYPE
缺省的图形在chart中的绘制类型. |
static int |
DEFAULT_SHAPE_ID
缺省的图形的序列号. |
static boolean |
DEFAULT_VISIBLE
缺省是否可见. |
protected java.awt.Shape |
transformedShape
用于计算是否包含某个点的图形. |
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 |
---|
public static final int DEFAULT_SHAPE_ID
public static final ChartShapeDrawType DEFAULT_DRAW_TYPE
public static final boolean DEFAULT_VISIBLE
protected transient java.awt.Shape transformedShape
Constructor Detail |
---|
protected AbstractChartShape()
Method Detail |
---|
public void setId(int shapeId)
setId
in interface IChartShape
shapeId
- intpublic int getId()
getId
in interface IChartShape
public java.awt.Paint getFillPaint()
getFillPaint
in interface IChartShape
public GradientPaintTransformType getGradientPaintTransformType()
getGradientPaintTransformType
in interface IChartShape
public java.awt.Paint getBorderPaint()
getBorderPaint
in interface IChartShape
public java.awt.Stroke getBorderStroke()
getBorderStroke
in interface IChartShape
public boolean isDrawBorder()
isDrawBorder
in interface IChartShape
public boolean isFillShape()
isFillShape
in interface IChartShape
public void setDrawBorder(boolean flag)
ChartShapeChangeEvent
事件.
setDrawBorder
in interface IChartShape
flag
- boolean true绘制外轮廓线,false不绘制轮廓线.
public void setFillPaint(java.awt.Paint paint)
ChartShapeChangeEvent
事件.
setFillPaint
in interface IChartShape
paint
- Paint 填充图形内部用的Paint(不可为null).
public void setFillShape(boolean bFillShape)
ChartShapeChangeEvent
事件.
setFillShape
in interface IChartShape
bFillShape
- boolean true填充图形内部,false不填充图形内部.
public void setGradientPaintTransformType(GradientPaintTransformType transformType)
ChartShapeChangeEvent
事件.
setGradientPaintTransformType
in interface IChartShape
transformType
- GradientPaintTransformType 渐变填充变换类型 (可为null).
public void setBorderPaint(java.awt.Paint paint)
ChartShapeChangeEvent
事件.
setBorderPaint
in interface IChartShape
paint
- Paint 图形外轮廓线Paint(不可为null).
public void setBorderStroke(java.awt.Stroke stroke)
ChartShapeChangeEvent
事件.
setBorderStroke
in interface IChartShape
stroke
- Stroke 图形外轮廓线画笔(不可为null).
public void setRotate(double theta)
ChartShapeChangeEvent
事件.
仿射变换可以用下面的矩阵表示:
[ cos(theta) -sin(theta) 0 ] [ sin(theta) cos(theta) 0 ] [ 0 0 1 ].
setRotate
in interface IChartShape
theta
- 旋转的角度,单位为弧度.
public void setSelected(boolean flag)
ChartShapeChangeEvent
事件.
setSelected
in interface IChartShape
flag
- boolean 布尔值.
public double getRotate()
getRotate
in interface IChartShape
public boolean isSelected()
isSelected
in interface IChartShape
public java.awt.Shape getOriginTooltipShape()
getOriginTooltipShape
in interface IChartShape
public void setOriginTooltipShape(java.awt.Shape shape)
setOriginTooltipShape
in interface IChartShape
shape
- Shape 图形 (可为null).
public java.awt.Shape getTooltipShape()
getTooltipShape
in interface IChartShape
protected java.awt.geom.Point2D getTooltipShapeTranslatePoint()
protected double getTooltipShapeRotate()
public void setSelectRectWidth(double width)
ChartShapeChangeEvent
事件.
width
- double 宽度,须大于0.
public void setSelectAnchorPaint(java.awt.Paint selectAnchorPaint)
ChartShapeChangeEvent
事件.
selectAnchorPaint
- Paint 不可为null.
public double getSelectRectWidth()
public java.awt.Paint getSelectAnchorPaint()
public boolean contains(java.awt.geom.Point2D point)
contains
in interface IChartShape
point
- Point2D 坐标值,例如鼠标坐标.(不可为null).
public boolean contains(double x, double y)
contains
in interface IChartShape
x
- double (x坐标位置).
y
- double (y坐标位置).
protected abstract void calculateTransformedShape()
public void setMargin(RectangleInsets margin)
ChartShapeChangeEvent
事件.
margin
- RectangleInsets 字符的边框之后的空白 (不可为null).
public RectangleInsets getMargin()
public void setSelectRectAlpha(float selectRectAlpha)
ChartShapeChangeEvent
事件.
selectRectAlpha
- float Alpha值,介于闭区间[0.0,1.0]的浮点数.
public float getSelectRectAlpha()
public void setFillAlpha(float alpha)
ChartShapeChangeEvent
事件.
setFillAlpha
in interface IChartShape
alpha
- float alpha值,须属于闭区间[0.0,1.0].
public float getFillAlpha()
getFillAlpha
in interface IChartShape
public void setTooltipText(java.lang.String tooltip)
setTooltipText
in interface IChartShape
tooltip
- String tooltip字符串 (可为null).
public java.lang.String getTooltipText()
getTooltipText
in interface IChartShape
public void setURL(java.lang.String url)
setURL
in interface IChartShape
url
- String URL字符串 (可为null).
public java.lang.String getURL()
getURL
in interface IChartShape
public java.awt.geom.Rectangle2D getBound()
getBound
in interface IChartShape
protected void drawBackground(java.awt.Graphics2D g2, java.awt.Shape drawArea)
g2
- Graphics2D 图形环境.
drawArea
- Shape 绘制范围.
protected void drawBorder(java.awt.Graphics2D g2, java.awt.Shape drawArea)
g2
- Graphics2D 图形环境.
drawArea
- Shape 绘制范围.
public java.awt.geom.Point2D getLockPoint()
getLockPoint
in interface IChartShape
public IChartData getData()
getData
in interface IChartShape
public void setData(IChartData data)
ChartShapeChangeEvent
事件.
setData
in interface IChartShape
data
- IChartData (可为null).
public boolean isVisible()
isVisible
in interface IChartShape
public void setVisible(boolean flag)
ChartShapeChangeEvent
事件.
setVisible
in interface IChartShape
flag
- boolean 布尔值.
public ChartShapeDrawType getShapeDrawType()
getShapeDrawType
in interface IChartShape
public void setShapeDrawType(ChartShapeDrawType drawType)
ChartShapeChangeEvent
事件.
setShapeDrawType
in interface IChartShape
drawType
- ChartShapeDrawType (null not permitted).
public void addChangeListener(IChartShapeChangeListener listener)
IChartShape
对象变化的监听者对象.
addChangeListener
in interface IChartShape
listener
- 注册的监听器对象.
public void removeChangeListener(IChartShapeChangeListener listener)
IChartShape
对象变化监听者对象.
removeChangeListener
in interface IChartShape
listener
- 要删除的监听者对象.
public void removeAllChangeListener()
IChartShape
对象变化监听者对象.
removeAllChangeListener
in interface IChartShape
public boolean hasListener(IChartShapeChangeListener listener)
listener
- 要测试的监听器.
public void forceChartShapeChanged()
forceChartShapeChanged
in interface IChartShape
public void chartShapeChanged(ChartShapeChangeEvent event)
chartShapeChanged
in interface IChartShapeChangeListener
event
- 描述图形对象变化的对象.
public void setShapeChange(IShapeChange change)
IShapeChange
对象.
setShapeChange
in interface IChartShape
change
- IShapeChange IShapeChange
对象 (可为null).
public java.lang.String getHotspotPolyCoords(java.awt.Shape parentClipArea)
getHotspotPolyCoords
in interface IChartShape
parentClipArea
- Shape 图形剪切区域 (可为null).
public java.lang.String getHotspotType()
getHotspotType
in interface IChartShape
protected abstract java.awt.Shape getHotspotShape()
public IShapeChange getShapeChange()
IShapeChange
对象.
getShapeChange
in interface IChartShape
IShapeChange
对象 (可为null).
protected abstract void drawSelect(java.awt.Graphics2D g2)
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null)
protected void fireChartShapeChanged()
protected void notifyListeners(ChartShapeChangeEvent event)
event
- 触发监听器的事件.
protected void drawAnchorByPoints(java.awt.Graphics2D g2, double translateX, double translateY, java.awt.geom.Point2D.Double[] points)
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null).
translateX
- double x偏移值,其它坐标的点都是相对这个坐标.
translateY
- double y偏移值,其它坐标的点都是相对这个坐标.
points
- Double[] 绘制锚点的坐标值.
protected void fillShape(java.awt.Graphics2D g2, java.awt.Paint fillPaint, java.awt.Shape shape)
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null).
fillPaint
- Paint 填充用的paint (不可为null).
shape
- Shape 要填充的图形 (不可为null).
protected void drawShapeBorder(java.awt.Graphics2D g2, java.awt.Shape shape)
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null).
shape
- Shape 要填充的图形 (不可为null).
protected void beforeDraw(java.awt.Graphics2D g2)
IShapeChange
的beforeDraw方法.
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null).
protected void afterDraw(java.awt.Graphics2D g2)
IShapeChange
的afterDraw方法.
g2
- Graphics2D 图形设备(如屏幕或打印机) (不可为null).
protected java.lang.String getHotspotType(java.awt.Shape shape)
shape
- Shape 图形 (可为null).
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- 要比较的对象.
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class java.lang.Object
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.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |