AWT Line2D 类



介绍

Line2D 类表示 (x,y) 坐标空间中的线段。

类声明

以下是java.awt.geom.Line2D 类的声明

public abstract class Line2D
   extends Object
      implements Shape, Cloneable

类构造函数

序号构造函数和描述
1

protected Line2D() ()

这是一个抽象类,不能直接实例化。

类方法

序号方法和描述
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 的整数矩形。

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()

以双精度返回起点的 X 坐标。

12

abstract double getX2()

以双精度返回终点的 X 坐标。

13

abstract double getY1()

以双精度返回起点的 Y 坐标。

14

abstract double getY2()

以双精度返回终点的 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 > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.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 TutorialsPoint", 50, 70);
      g2.drawString("Line2D.Line", 100, 120);  
   }
}

使用命令提示符编译程序。转到D:/ > AWT 并输入以下命令。

D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java

如果没有错误,则表示编译成功。使用以下命令运行程序。

D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo

验证以下输出

AWT Line2D
awt_graphics.htm
广告