当前位置: 首页 > 文档资料 > JAVA AWT 中文文档 >

Line2D

优质
小牛编辑
138浏览
2023-12-01

介绍 (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.java
package 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

验证以下输出

AWT Line2D