JavaTM 2 Platform
Standard Ed. 6

java.awt.geom
類別 RectangularShape

java.lang.Object
  繼承者 java.awt.geom.RectangularShape
所有已實作的介面:
Shape, Cloneable
直接已知子類別:
Arc2D, Ellipse2D, Rectangle2D, RoundRectangle2D

public abstract class RectangularShape
extends Object
implements Shape, Cloneable

RectangularShape 是許多 Shape 物件的基礎類別,這些物件的幾何形狀由矩形窗體定義。此類別本身不直接指定任何特定的幾何形狀,而只是提供由整個 Shape 物件種類別繼承的操縱方法。由此類別提供的操縱方法可用於查詢和修改矩形窗體,為子類別定義其幾何形狀提供參考。

從以下版本開始:
1.2

建構子摘要
protected RectangularShape()
          這是一個不可直接實例化的抽象類別。
 
方法摘要
 Object clone()
          創建一個與此物件具有相同類別和相同內容的新物件。
 boolean contains(Point2D p)
          測試指定的 Point2D 是否在 Shape 的邊界內。
 boolean contains(Rectangle2D r)
          測試 Shape 內部是否完全包含指定的 Rectangle2D
 Rectangle getBounds()
          返回一個完全包圍 Shape 的整型 Rectangle
 double getCenterX()
          以 double 精度返回 Shape 的窗體矩形中心的 X 坐標。
 double getCenterY()
          以 double 精度返回 Shape 的窗體矩形中心的 Y 坐標。
 Rectangle2D getFrame()
          返回定義此物件的總體形狀的窗體 Rectangle2D
abstract  double getHeight()
          以 double 精度返回窗體矩形的高度。
 double getMaxX()
          以 double 精度返回 Shape 窗體矩形的最大 X 坐標。
 double getMaxY()
          以 double 精度返回 Shape 窗體矩形的最大 Y 坐標。
 double getMinX()
          以 double 精度返回 Shape 窗體矩形的最小 X 坐標。
 double getMinY()
          以 double 精度返回 Shape 窗體矩形的最小 Y 坐標。
 PathIterator getPathIterator(AffineTransform at, double flatness)
          返回一個迭代器物件,它可沿 Shape 物件的邊界進行迭代,並提供對 Shape 物件輪廓幾何形狀平面視圖的存取。
abstract  double getWidth()
          以 double 精度返回窗體矩形的寬度。
abstract  double getX()
          以 double 精度返回窗體矩形左上角的 X 坐標。
abstract  double getY()
          以 double 精度返回窗體矩形左上角的 Y 坐標。
 boolean intersects(Rectangle2D r)
          測試 Shape 內部是否與指定 Rectangle2D 內部相交。
abstract  boolean isEmpty()
          確定 RectangularShape 是否為空。
abstract  void setFrame(double x, double y, double w, double h)
          將此 Shape 窗體矩形的位置和大小設置為指定的矩形值。
 void setFrame(Point2D loc, Dimension2D size)
          將此 Shape 窗體矩形的位置和大小分別設置為指定的 Point2DDimension2D
 void setFrame(Rectangle2D r)
          將此 Shape 窗體矩形設置為指定的 Rectangle2D
 void setFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY)
          基於指定的中心點坐標和角點坐標設置此 Shape 的窗體矩形。
 void setFrameFromCenter(Point2D center, Point2D corner)
          基於指定的中心 Point2D 和角 Point2D 設置此 Shape 的窗體矩形。
 void setFrameFromDiagonal(double x1, double y1, double x2, double y2)
          基於兩個指定的坐標設置此 Shape 窗體矩形的對角線。
 void setFrameFromDiagonal(Point2D p1, Point2D p2)
          基於兩個指定的 Point2D 物件設置此 Shape 窗體矩形的對角線。
 
從類別 java.lang.Object 繼承的方法
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
從介面 java.awt.Shape 繼承的方法
contains, contains, getBounds2D, getPathIterator, intersects
 

建構子詳細資訊

RectangularShape

protected RectangularShape()
這是一個不可直接實例化的抽象類別。

從以下版本開始:
1.2
另請參見:
Arc2D, Ellipse2D, Rectangle2D, RoundRectangle2D
方法詳細資訊

getX

public abstract double getX()
double 精度返回窗體矩形左上角的 X 坐標。

返回:
窗體矩形左上角的 X 坐標。
從以下版本開始:
1.2

getY

public abstract double getY()
double 精度返回窗體矩形左上角的 Y 坐標。

返回:
窗體矩形左上角的 Y 坐標。
從以下版本開始:
1.2

getWidth

public abstract double getWidth()
double 精度返回窗體矩形的寬度。

返回:
窗體矩形的寬度。
從以下版本開始:
1.2

getHeight

public abstract double getHeight()
double 精度返回窗體矩形的高度。

返回:
窗體矩形的高度。
從以下版本開始:
1.2

getMinX

public double getMinX()
double 精度返回 Shape 窗體矩形的最小 X 坐標。

返回:
Shape 窗體矩形的最小 X 坐標。
從以下版本開始:
1.2

getMinY

public double getMinY()
double 精度返回 Shape 窗體矩形的最小 Y 坐標。

返回:
Shape 窗體矩形的最小 Y 坐標。
從以下版本開始:
1.2

getMaxX

public double getMaxX()
double 精度返回 Shape 窗體矩形的最大 X 坐標。

返回:
Shape 窗體矩形的最大 X 坐標。
從以下版本開始:
1.2

getMaxY

public double getMaxY()
double 精度返回 Shape 窗體矩形的最大 Y 坐標。

返回:
Shape 窗體矩形的最大 Y 坐標。
從以下版本開始:
1.2

getCenterX

public double getCenterX()
double 精度返回 Shape 的窗體矩形中心的 X 坐標。

返回:
Shape 物件的窗體矩形中心的 X 坐標。
從以下版本開始:
1.2

getCenterY

public double getCenterY()
double 精度返回 Shape 的窗體矩形中心的 Y 坐標。

返回:
Shape 物件的窗體矩形中心的 Y 坐標。
從以下版本開始:
1.2

getFrame

public Rectangle2D getFrame()
返回定義此物件的總體形狀的窗體 Rectangle2D

返回:
一個 Rectangle2D,它是使用 double 坐標指定的。
從以下版本開始:
1.2
另請參見:
setFrame(double, double, double, double), setFrame(Point2D, Dimension2D), setFrame(Rectangle2D)

isEmpty

public abstract boolean isEmpty()
確定 RectangularShape 是否為空。當 RectangularShape 為空時,它不封閉任何區域。

返回:
如果 RectangularShape 為空,則返回 true;否則返回 false
從以下版本開始:
1.2

setFrame

public abstract void setFrame(double x,
                              double y,
                              double w,
                              double h)
將此 Shape 窗體矩形的位置和大小設置為指定的矩形值。

參數:
x - 指定矩形左上角的 X 坐標
y - 指定矩形左上角的 Y 坐標
w - 指定矩形的寬度
h - 指定矩形的高度
從以下版本開始:
1.2
另請參見:
getFrame()

setFrame

public void setFrame(Point2D loc,
                     Dimension2D size)
將此 Shape 窗體矩形的位置和大小分別設置為指定的 Point2DDimension2D。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
loc - 指定的 Point2D
size - 指定的 Dimension2D
從以下版本開始:
1.2
另請參見:
getFrame()

setFrame

public void setFrame(Rectangle2D r)
將此 Shape 窗體矩形設置為指定的 Rectangle2D。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
r - 指定的 Rectangle2D
從以下版本開始:
1.2
另請參見:
getFrame()

setFrameFromDiagonal

public void setFrameFromDiagonal(double x1,
                                 double y1,
                                 double x2,
                                 double y2)
基於兩個指定的坐標設置此 Shape 窗體矩形的對角線。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
x1 - 指定對角線起始點的 X 坐標
y1 - 指定對角線起始點的 Y 坐標
x2 - 指定對角線結束點的 X 坐標
y2 - 指定對角線結束點的 Y 坐標
從以下版本開始:
1.2

setFrameFromDiagonal

public void setFrameFromDiagonal(Point2D p1,
                                 Point2D p2)
基於兩個指定的 Point2D 物件設置此 Shape 窗體矩形的對角線。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
p1 - 指定對角線的起始 Point2D
p2 - 指定對角線的結束 Point2D
從以下版本開始:
1.2

setFrameFromCenter

public void setFrameFromCenter(double centerX,
                               double centerY,
                               double cornerX,
                               double cornerY)
基於指定的中心點坐標和角點坐標設置此 Shape 的窗體矩形。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
centerX - 指定中心點的 X 坐標
centerY - 指定中心點的 X 坐標
cornerX - 指定角點的 X 坐標
cornerY - 指定角點的 Y 坐標
從以下版本開始:
1.2

setFrameFromCenter

public void setFrameFromCenter(Point2D center,
                               Point2D corner)
基於指定的中心 Point2D 和角 Point2D 設置此 Shape 的窗體矩形。窗體矩形供 RectangularShape 的子類別定義其幾何形狀。

參數:
center - 指定的中心 Point2D
corner - 指定的角 Point2D
從以下版本開始:
1.2

contains

public boolean contains(Point2D p)
測試指定的 Point2D 是否在 Shape 的邊界內。

指定者:
介面 Shape 中的 contains
參數:
p - 要測試的指定的 Point2D
返回:
如果指定的 Point2DShape 邊界內,則返回 true;否則返回 false
從以下版本開始:
1.2

intersects

public boolean intersects(Rectangle2D r)
測試 Shape 內部是否與指定 Rectangle2D 內部相交。在下列情況下,Shape.intersects() 方法允許 Shape 實作謹慎地返回 true 這意味著對於某些 Shape,即使 Rectangle2D 沒有與該 Shape 相交,此方法也可能返回 true。如果需要更精確的答案,由於 Area 類別比大多數 Shape 物件更為準確地計算幾何相交,因此可以使用該類別。

指定者:
介面 Shape 中的 intersects
參數:
r - 指定的 Rectangle2D
返回:
如果 Shape 內部與指定 Rectangle2D 內部相交,或者相交的可能性很大且執行計算的代價太高,則返回 true;否則返回 false
從以下版本開始:
1.2
另請參見:
Shape.intersects(double, double, double, double)

contains

public boolean contains(Rectangle2D r)
測試 Shape 內部是否完全包含指定的 Rectangle2D。在下列情況下,Shape.contains() 方法允許 Shape 實作謹慎地返回 false 這意味著對於某些 Shape,即使 Shape 套件含 Rectangle2D,此方法也可能返回 false。如果需要更精確的答案,由於 Area 類別比大多數 Shape 物件更為準確地執行幾何計算,因此可以使用該類別。

指定者:
介面 Shape 中的 contains
參數:
r - 指定的 Rectangle2D
返回:
如果 Shape 內部完全包含 Rectangle2D,則返回 true;否則,如果 Shape 套件含 Rectangle2Dintersects 方法返回 true 且執行包含計算代價太高,則返回 false
從以下版本開始:
1.2
另請參見:
Shape.contains(double, double, double, double)

getBounds

public Rectangle getBounds()
返回一個完全包圍 Shape 的整型 Rectangle。注意,不保證返回的 Rectangle 是包圍 Shape 的最小邊界框,只保證 Shape 完全位於指示的 Rectangle 中。如果 Shape 超出了整數資料型別的有效範圍,則返回的 Rectangle 也可能不完全包圍 ShapegetBounds2D 方法由於在表示形式上具有更大的靈活性,所以通常返回更緊密的邊界框。

指定者:
介面 Shape 中的 getBounds
返回:
完全包圍 Shape 的整型 Rectangle
從以下版本開始:
1.2
另請參見:
Shape.getBounds2D()

getPathIterator

public PathIterator getPathIterator(AffineTransform at,
                                    double flatness)
返回一個迭代器物件,它可沿 Shape 物件的邊界進行迭代,並提供對 Shape 物件輪廓幾何形狀平面視圖的存取。

迭代器將只返回 SEG_MOVETO、SEG_LINETO 和 SEG_CLOSE 點型別。

flatness 參數控制曲線段分段的數量,指定變換的不平曲線上任一點能夠偏離返回的變平路徑段的最大距離。可以指定一個可選的 AffineTransform,以便相應地變換迭代中返回的坐標。

指定者:
介面 Shape 中的 getPathIterator
參數:
at - 可選的 AffineTransform,應用於迭代中返回坐標;如果需要未變換的坐標,則為 null
flatness - 用來近似曲線段的直線段偏離原始曲線上任一點的最大距離
返回:
提供對 Shape 物件的變平幾何形狀的存取的 PathIterator 物件。
從以下版本開始:
1.2

clone

public Object clone()
創建一個與此物件具有相同類別和相同內容的新物件。

覆寫:
類別 Object 中的 clone
返回:
此實例的一個副本。
拋出:
OutOfMemoryError - 如果沒有足夠的記憶體。
從以下版本開始:
1.2
另請參見:
Cloneable

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only