com.ijchart.xychart.shape
Class LineChartShape

java.lang.Object
  extended by com.ijchart.xychart.shape.AbstractChartShape
      extended by com.ijchart.xychart.shape.LineChartShape
All Implemented Interfaces:
IChartShapeChangeListener, IChartShape, java.io.Serializable, java.lang.Cloneable, java.util.EventListener

public class LineChartShape
extends AbstractChartShape
implements java.io.Serializable, java.lang.Cloneable

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
 
Fields inherited from class com.ijchart.xychart.shape.AbstractChartShape
DEFAULT_DRAW_TYPE, DEFAULT_SHAPE_ID, DEFAULT_VISIBLE, 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
LineChartShape(double x1, double y1, double x2, double y2)
          绘制一条从点(x1,y1)到点(x2,y2)的直线.
LineChartShape(java.awt.geom.Line2D line)
          绘制一条直线.
LineChartShape(java.awt.geom.Point2D p1, java.awt.geom.Point2D p2)
          绘制一条从点p1到点p2的直线.
 
Method Summary
protected  void calculateTransformedShape()
          计算变换后的图形.
 java.lang.Object clone()
          返回克隆的对象.
 void draw(java.awt.Graphics2D g2)
          在图形设备(如屏幕或打印机)上绘制此图形
protected  void drawSelect(java.awt.Graphics2D g2)
          在图形设备(如屏幕或打印机)上绘制图形的选中部分,因为图形可能会有重叠,所以绘制图形时要先绘制完所有的图形后, 再调用此方法绘制选中部分.
 boolean equals(java.lang.Object obj)
          测试两个对象是否相等.
protected  java.awt.Shape getHotspotShape()
          返回热点图形.
 java.awt.geom.Point2D getLockPoint()
          返回鼠标点击时锁定图形的点.
 java.awt.geom.Point2D getPoint1()
          返回第一个点的坐标.
 java.awt.geom.Point2D getPoint2()
          返回第二个点的坐标.
 ShapeType getShapeType()
          描述本图形的类型.
protected  double getTooltipShapeRotate()
          返回tooltip图形应该旋转的角度.
protected  java.awt.geom.Point2D getTooltipShapeTranslatePoint()
          返回tooltip图形应该偏移的位置.
 java.awt.geom.Point2D getTopLeftPoint()
          返回图形左上角的坐标(不考虑图形的旋转).
 double getX1()
          返回第一个点的x坐标.
 double getX2()
          返回第二个点的x坐标.
 double getY1()
          返回第一个点的y坐标.
 double getY2()
          返回第二个点的y坐标.
 int hashCode()
          计算对象的hashcode值.
 void setPoint1(double x, double y)
          设置第一个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setPoint1(java.awt.geom.Point2D p)
          设置第一个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setPoint2(double x, double y)
          设置第二个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setPoint2(java.awt.geom.Point2D p)
          设置第二个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setX1(double x1)
          设置第一个点的x坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setX2(double x2)
          设置第二个点的x坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setY1(double y1)
          设置第一个点的y坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 void setY2(double y2)
          设置第二个点的y坐标,并向所有监听器发送 ChartShapeChangeEvent事件.
 java.lang.String toString()
          覆盖toString方法.

Parameters:
x1 - double 第一个点的x坐标.
y1 - double 第一个点的y坐标.
x2 - double 第二个点的x坐标.
y2 - double 第二个点的y坐标.

LineChartShape

public LineChartShape(java.awt.geom.Point2D p1,
                      java.awt.geom.Point2D p2)
绘制一条从点p1到点p2的直线.

Parameters:
p1 - Point2D 第一个点 (不可为null).
p2 - Point2D 第二个点 (不可为null).

LineChartShape

public LineChartShape(java.awt.geom.Line2D line)
绘制一条直线.

Parameters:
line - Line2D 直线 (不可为null).
Method Detail

draw

public void draw(java.awt.Graphics2D g2)
在图形设备(如屏幕或打印机)上绘制此图形

Specified by:
draw in interface IChartShape
Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null).

drawSelect

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

Specified by:
drawSelect in class AbstractChartShape
Parameters:
g2 - Graphics2D 图形设备(如屏幕或打印机) (不可为null)

translate

public void translate(double tx,
                      double ty)
相对移动本图形,其中X轴方向偏移tx,Y轴方向偏移ty,并向所有监听器发送 ChartShapeChangeEvent事件.

Specified by:
translate in interface IChartShape
Parameters:
tx - double 沿X轴方向的距离.
ty - double 沿Y轴方向的距离.

getTopLeftPoint

public java.awt.geom.Point2D getTopLeftPoint()
返回图形左上角的坐标(不考虑图形的旋转).

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

getLockPoint

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

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

calculateTransformedShape

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

Specified by:
calculateTransformedShape in class AbstractChartShape

getTooltipShapeTranslatePoint

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

Overrides:
getTooltipShapeTranslatePoint in class AbstractChartShape
Returns:
Point2D 坐标 (可为null).

getTooltipShapeRotate

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

Overrides:
getTooltipShapeRotate in class AbstractChartShape
Returns:
double 角度(单位是弧度).

setX1

public void setX1(double x1)
设置第一个点的x坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
x1 - double

getX1

public double getX1()
返回第一个点的x坐标.

Returns:
double

setY1

public void setY1(double y1)
设置第一个点的y坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
y1 - double

getY1

public double getY1()
返回第一个点的y坐标.

Returns:
double

setX2

public void setX2(double x2)
设置第二个点的x坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
x2 - double

getX2

public double getX2()
返回第二个点的x坐标.

Returns:
double

setY2

public void setY2(double y2)
设置第二个点的y坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
y2 - double

getY2

public double getY2()
返回第二个点的y坐标.

Returns:
double

setPoint1

public void setPoint1(double x,
                      double y)
设置第一个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
x - double 第一个点的x坐标.
y - double 第一个点的y坐标.

setPoint2

public void setPoint2(double x,
                      double y)
设置第二个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
x - double 第二个点的x坐标.
y - double 第二个点的y坐标.

setPoint1

public void setPoint1(java.awt.geom.Point2D p)
设置第一个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
p - Point2D 第一个点的坐标 (不可为null).

getPoint1

public java.awt.geom.Point2D getPoint1()
返回第一个点的坐标.

Returns:
Point2D 第一个点的坐标 (不会为null).

setPoint2

public void setPoint2(java.awt.geom.Point2D p)
设置第二个点的坐标,并向所有监听器发送 ChartShapeChangeEvent事件.

Parameters:
p - Point2D 第二个点的坐标 (不可为null).

getPoint2

public java.awt.geom.Point2D getPoint2()
返回第二个点的坐标.

Returns:
Point2D 第二个点的坐标 (不会为null).

getHotspotShape

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

Specified by:
getHotspotShape in class AbstractChartShape
Returns:
Shape 热点图形 (可为null).

getShapeType

public ShapeType getShapeType()
描述本图形的类型.

Specified by:
getShapeType in interface IChartShape
Returns:
ShapeType ShapeType类定义的常量 (不可为null).

equals

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

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

hashCode

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

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

clone

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

Overrides:
clone in class AbstractChartShape
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 java.lang.Object
Returns:
a string representation of the object.