Line2D
介绍 (Introduction)
Line2D类在(x,y)坐标空间中声明线段。
类声明
以下是java.awt.geom.Line2D类的声明:
public abstract class Line2D
extends Object
implements Shape, Cloneable
类构造函数
SN | 构造函数和描述 |
---|---|
1 | protected Line2D() () 这是一个无法直接实例化的抽象类。 |
类方法
SN | 方法和描述 |
---|---|
1 | Object clone() 创建与此对象相同的类的新对象。 |
2 | boolean contains(double x, double y) 测试指定的坐标是否在此Line2D的边界内。 |
3 | boolean contains(double x, double y, double w, double h) 测试此Line2D的内部是否完全包含指定的直角坐标集。 |
4 | boolean contains(Point2D p) 测试给定的Point2D是否在此Line2D的边界内。 |
5 | boolean contains(Rectangle2D r) 测试此Line2D的内部是否完全包含指定的Rectangle2D。 |
6 | Rectangle getBounds() 返回完全包含Shape的整数Rectangle。 |
7 | abstract Point2D getP1() 返回此Line2D的起始Point2D。 |
8 | abstract Point2D getP2() 返回此Line2D的结束Point2D。 |
9 | PathIterator getPathIterator(AffineTransform at) 返回定义此Line2D边界的迭代对象。 |
10 | PathIterator getPathIterator(AffineTransform at, double flatness) 返回一个迭代对象,用于定义此展平Line2D的边界。 |
11 | abstract double getX1() 以double精度返回起始点的X坐标。 |
12 | abstract double getX2() 以double精度返回结束点的X坐标。 |
13 | abstract double getY1() 以double精度返回起始点的Y坐标。 |
14 | abstract double getY2() 以double精度返回结束点的Y坐标。 |
15 | boolean intersects(double x, double y, double w, double h) 测试Shape的内部是否与指定矩形区域的内部相交。 |
16 | boolean intersects(Rectangle2D r) 测试Shape的内部是否与指定Rectangle2D的内部相交。 |
17 | boolean intersectsLine(double x1, double y1, double x2, double y2) 测试从(x1,y1)到(x2,y2)的线段是否与此线段相交。 |
18 | boolean intersectsLine(Line2D l) 测试指定的线段是否与此线段相交。 |
19 | static boolean linesIntersect(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4) 测试从(x1,y1)到(x2,y2)的线段是否与从(x3,y3)到(x4,y4)的线段相交。 |
20 | double ptLineDist(double px, double py) 返回从点到此线的距离。 |
21 | static double ptLineDist(double x1, double y1, double x2, double y2, double px, double py) 返回从点到线的距离。 |
22 | double ptLineDist(Point2D pt) 返回Point2D到此行的距离。 |
23 | double ptLineDistSq(double px, double py) 返回从点到此线的距离的平方。 |
24 | static double ptLineDistSq(double x1, double y1, double x2, double y2, double px, double py) 返回从点到线的距离的平方。 |
25 | double ptLineDistSq(Point2D pt) 返回从指定Point2D到此行的距离的平方。 |
26 | double ptSegDist(double px, double py) 返回从点到此线段的距离。 |
27 | static double ptSegDist(double x1, double y1, double x2, double y2, double px, double py) 返回从点到线段的距离。 |
28 | double ptSegDist(Point2D pt) 返回Point2D到此线段的距离。 |
29 | double ptSegDistSq(double px, double py) 返回从点到此线段的距离的平方。 |
30 | static double ptSegDistSq(double x1, double y1, double x2, double y2, double px, double py) 返回从点到线段的距离的平方。 |
31 | double ptSegDistSq(Point2D pt) 返回从Point2D到此线段的距离的平方。 |
32 | int relativeCCW(double px, double py) 返回指定点(px,py)相对于此线段的位置的指示符。 |
33 | static int relativeCCW(double x1, double y1, double x2, double y2, double px, double py) 返回指定点(px,py)相对于从(x1,y1)到(x2,y2)的线段的位置的指示符。 |
34 | int relativeCCW(Point2D p) 返回指定Point2D相对于此线段的位置的指示符。 |
35 | abstract void setLine(double x1, double y1, double x2, double y2) 将此Line2D的端点的位置设置为指定的双坐标。 |
36 | void setLine(Line2D l) 将此Line2D的端点位置设置为与指定Line2D的端点相同。 |
37 | void setLine(Point2D p1, Point2D p2) 将此Line2D的端点的位置设置为指定的Point2D坐标。 |
方法继承
该类继承以下类中的方法:
java.lang.Object
Line2D示例
使用您选择的任何编辑器创建以下java程序,例如D:/ 》 AWT 》 com 》 iowiki 》 gui 》
AWTGraphicsDemo.javapackage com.iowiki.gui;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
public class AWTGraphicsDemo extends Frame {
public AWTGraphicsDemo(){
super("Java AWT Examples");
prepareGUI();
}
public static void main(String[] args){
AWTGraphicsDemo awtGraphicsDemo = new AWTGraphicsDemo();
awtGraphicsDemo.setVisible(true);
}
private void prepareGUI(){
setSize(400,400);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
}
@Override
public void paint(Graphics g) {
Line2D shape = new Line2D.Double();
shape.setLine(250D,250D,150D,150D);
Graphics2D g2 = (Graphics2D) g;
g2.draw (shape);
Font font = new Font("Serif", Font.PLAIN, 24);
g2.setFont(font);
g.drawString("Welcome to IoWiki", 50, 70);
g2.drawString("Line2D.Line", 100, 120);
}
}
使用命令提示符编译程序。 转到D:/ 》 AWT并键入以下命令。
D:\AWT>javac com\iowiki\gui\AWTGraphicsDemo.java
如果没有错误,那意味着编译成功。 使用以下命令运行程序。
D:\AWT>java com.iowiki.gui.AWTGraphicsDemo
验证以下输出