クラスLine2D
- 直系の既知のサブクラス:
Line2D.Double,Line2D.Float
-
ネストされたクラスのサマリー
ネストされたクラス修飾子と型クラス説明static classdouble座標で指定されたライン・セグメントです。static classfloat座標で指定されたライン・セグメントです。 -
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明clone()このオブジェクトと同じクラスの新しいオブジェクトを作成します。booleancontains(double x, double y) 指定された座標が、このLine2Dの境界内にあるかどうかを判定します。booleancontains(double x, double y, double w, double h) このLine2Dの内部が、指定された矩形座標セットを完全に内包するかどうかを判定します。boolean指定されたPoint2Dが、このLine2Dの境界内にあるかどうかを判定します。booleanこのLine2Dの内部が、指定されたRectangle2Dを完全に内包するかどうかを判定します。Shapeを完全に囲む整数のRectangleを返します。abstract Point2DgetP1()このLine2Dの始点Point2Dを返します。abstract Point2DgetP2()このLine2Dの終点Point2Dを返します。このLine2Dの境界を定義する反復オブジェクトを返します。getPathIterator(AffineTransform at, double flatness) この平坦化されたLine2Dの境界を定義する反復オブジェクトを返します。abstract doublegetX1()始点のX座標を倍精度で返します。abstract doublegetX2()終点のX座標を倍精度で返します。abstract doublegetY1()始点のY座標を倍精度で返します。abstract doublegetY2()終点のY座標を倍精度で返します。booleanintersects(double x, double y, double w, double h) Shapeの内部が指定された矩形領域の内部と交差しているかどうかをテストします。booleanShapeの内部が指定されたRectangle2Dの内部と交差しているかどうかをテストします。booleanintersectsLine(double x1, double y1, double x2, double y2) (x1,y1)から(x2,y2)のライン・セグメントがこのライン・セグメントと交差するかどうかを判定します。boolean指定されたライン・セグメントがこのライン・セグメントと交差するかどうかを判定します。static booleanlinesIntersect(double x1, double y1, double x2, double y2, double x3, double y3, double x4, double y4) (x1,y1)から(x2,y2)のライン・セグメントが(x3,y3)から(x4,y4)のライン・セグメントと交差するかどうかを判定します。doubleptLineDist(double px, double py) 点からこのラインまでの距離を返します。static doubleptLineDist(double x1, double y1, double x2, double y2, double px, double py) 点からラインまでの距離を返します。doubleptLineDist(Point2D pt) Point2Dからこのラインまでの距離を返します。doubleptLineDistSq(double px, double py) 点からこのラインまでの距離の2乗を返します。static doubleptLineDistSq(double x1, double y1, double x2, double y2, double px, double py) 点からラインまでの距離の2乗を返します。doubleptLineDistSq(Point2D pt) 指定されたPoint2Dからこのラインまでの距離の2乗を返します。doubleptSegDist(double px, double py) 点からこのライン・セグメントまでの距離を返します。static doubleptSegDist(double x1, double y1, double x2, double y2, double px, double py) 点からライン・セグメントまでの距離を返します。doublePoint2Dからこのライン・セグメントまでの距離を返します。doubleptSegDistSq(double px, double py) 点からこのライン・セグメントまでの距離の2乗を返します。static doubleptSegDistSq(double x1, double y1, double x2, double y2, double px, double py) 点からライン・セグメントまでの距離の2乗を返します。doubleptSegDistSq(Point2D pt) Point2Dからこのライン・セグメントまでの距離の2乗を返します。intrelativeCCW(double px, double py) このライン・セグメントを基準として、指定された点(px,py)の位置を示すインジケータを返します。static intrelativeCCW(double x1, double y1, double x2, double y2, double px, double py) (x1,y1)から(x2,y2)のライン・セグメントを基準として、指定された点(px,py)の位置を示すインジケータを返します。intこのライン・セグメントを基準として、指定されたPoint2Dの位置を示すインジケータを返します。abstract voidsetLine(double x1, double y1, double x2, double y2) このLine2Dの両方の終点の位置を、指定されたdouble座標に設定します。voidこのLine2Dの両方の終点の位置を、指定されたLine2Dの終点と同じ位置に設定します。voidこのLine2Dの両方の終点の位置を、指定されたPoint2D座標に設定します。クラスjava.lang.Objectで宣言されたメソッド
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitインタフェースjava.awt.Shapeで宣言されたメソッド
getBounds2D
-
コンストラクタの詳細
-
Line2D
protected Line2D()これは、インスタンスを直接には生成できない抽象クラスです。 インスタンス生成のためには型固有の実装サブクラスが用意されており、これらのサブクラスにより、下記の各種アクセサリ・メソッドに必要な情報を格納するための形式が多数提供されます。- 導入されたバージョン:
- 1.2
- 関連項目:
-
-
メソッドの詳細
-
getX1
public abstract double getX1()始点のX座標を倍精度で返します。- 戻り値:
- この
Line2Dオブジェクトの始点のX座標。 - 導入されたバージョン:
- 1.2
-
getY1
public abstract double getY1()始点のY座標を倍精度で返します。- 戻り値:
- この
Line2Dオブジェクトの始点のY座標。 - 導入されたバージョン:
- 1.2
-
getP1
-
getX2
public abstract double getX2()終点のX座標を倍精度で返します。- 戻り値:
- この
Line2Dオブジェクトの終点のX座標。 - 導入されたバージョン:
- 1.2
-
getY2
public abstract double getY2()終点のY座標を倍精度で返します。- 戻り値:
- この
Line2Dオブジェクトの終点のY座標。 - 導入されたバージョン:
- 1.2
-
getP2
-
setLine
public abstract void setLine(double x1, double y1, double x2, double y2) このLine2Dの両方の終点の位置を、指定されたdouble座標に設定します。- パラメータ:
x1- 始点のX座標y1- 始点のY座標x2- 終点のX座標y2- 終点のY座標- 導入されたバージョン:
- 1.2
-
setLine
-
setLine
public void setLine(Line2D l) このLine2Dの両方の終点の位置を、指定されたLine2Dの終点と同じ位置に設定します。- パラメータ:
l- 指定されたLine2D- 導入されたバージョン:
- 1.2
-
relativeCCW
public static int relativeCCW(double x1, double y1, double x2, double y2, double px, double py) (x1,y1)から(x2,y2)のライン・セグメントを基準として、指定された点(px,py)の位置を示すインジケータを返します。 戻り値は1、-1、0のいずれかであり、指定された線が指定された点(px,py)をポイントするには、最初の終点(x1,y1)を基準にしてどの方向に回転する必要があるかを示します。戻り値が1の場合、正のX軸を負のY軸に向けて移動する方向にライン・セグメントを回転することを示します。 Java 2Dで使用されるデフォルトの座標体系では、これは反時計方向になります。
戻り値が -1の場合、正のX軸を正のY軸に向けて移動する方向にライン・セグメントを回転することを示します。 デフォルトの座標体系では、これは時計方向になります。
戻り値が0の場合、点が正確にライン・セグメント上にあることを示します。 インジケータ値が0になることはまれであり、浮動小数点の丸めの問題により共線性の判断には利用できません。
点がライン・セグメントの終点の間ではなく延長上にある場合、値は、点が「
(x1,y1)の外側」にある場合は -1に、点が「(x2,y2)の外側」にある場合は1になります。- パラメータ:
x1- 指定されたライン・セグメントの始点のX座標y1- 指定されたライン・セグメントの始点のY座標x2- 指定されたライン・セグメントの終点のX座標y2- 指定されたライン・セグメントの終点のY座標px- 指定されたライン・セグメントと比較される、指定された点のX座標py- 指定されたライン・セグメントと比較される、指定された点のY座標- 戻り値:
- 指定された最初の2つの座標からなるライン・セグメントに対して3番目に指定された座標の位置を示す整数値。
- 導入されたバージョン:
- 1.2
-
relativeCCW
public int relativeCCW(double px, double py) このライン・セグメントを基準として、指定された点(px,py)の位置を示すインジケータを返します。 戻り値の解釈については、relativeCCW(double, double, double, double, double, double)のメソッドのコメントを参照してください。- パラメータ:
px- このLine2Dと比較される、指定された点のX座標py- このLine2Dと比較される、指定された点のY座標- 戻り値:
- この
Line2Dを基準にした、指定された座標の位置を示す整数 - 導入されたバージョン:
- 1.2
- 関連項目:
-
relativeCCW
public int relativeCCW(Point2D p) このライン・セグメントを基準として、指定されたPoint2Dの位置を示すインジケータを返します。 戻り値の解釈については、relativeCCW(double, double, double, double, double, double)のメソッドのコメントを参照してください。- パラメータ:
p- このLine2Dと比較される、指定されたPoint2D- 戻り値:
- この
Line2Dを基準にした、指定されたPoint2Dの位置を示す整数 - 導入されたバージョン:
- 1.2
- 関連項目:
-
linesIntersect
public 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)のライン・セグメントと交差するかどうかを判定します。- パラメータ:
x1- 最初に指定されたライン・セグメントの始点のX座標y1- 最初に指定されたライン・セグメントの始点のY座標x2- 最初に指定されたライン・セグメントの終点のX座標y2- 最初に指定されたライン・セグメントの終点のY座標x3- 2番目に指定されたライン・セグメントの始点のX座標y3- 2番目に指定されたライン・セグメントの始点のY座標x4- 2番目に指定されたライン・セグメントの終点のX座標y4- 2番目に指定されたライン・セグメントの終点のY座標- 戻り値:
- 最初に指定されたライン・セグメントと2番目に指定されたライン・セグメントが互いに交差する場合は
true、それ以外の場合はfalse。 - 導入されたバージョン:
- 1.2
-
intersectsLine
public boolean intersectsLine(double x1, double y1, double x2, double y2) (x1,y1)から(x2,y2)のライン・セグメントがこのライン・セグメントと交差するかどうかを判定します。- パラメータ:
x1- 指定されたライン・セグメントの始点のX座標y1- 指定されたライン・セグメントの始点のY座標x2- 指定されたライン・セグメントの終点のX座標y2- 指定されたライン・セグメントの終点のY座標- 戻り値:
- このライン・セグメントと指定されたライン・セグメントが互いに交差する場合は
true、それ以外の場合はfalse。 - 導入されたバージョン:
- 1.2
-
intersectsLine
public boolean intersectsLine(Line2D l) 指定されたライン・セグメントがこのライン・セグメントと交差するかどうかを判定します。- パラメータ:
l- 指定されたLine2D- 戻り値:
- このライン・セグメントと指定されたライン・セグメントが互いに交差する場合は
true、それ以外の場合はfalse。 - 導入されたバージョン:
- 1.2
-
ptSegDistSq
public static double ptSegDistSq(double x1, double y1, double x2, double y2, double px, double py) 点からライン・セグメントまでの距離の2乗を返します。 この距離は、指定された点と、指定された終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
x1- 指定されたライン・セグメントの始点のX座標y1- 指定されたライン・セグメントの始点のY座標x2- 指定されたライン・セグメントの終点のX座標y2- 指定されたライン・セグメントの終点のY座標px- 指定されたライン・セグメントに対して測定される、指定された点のX座標py- 指定されたライン・セグメントに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から指定されたライン・セグメントまでの距離の2乗であるdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptSegDist
public static double ptSegDist(double x1, double y1, double x2, double y2, double px, double py) 点からライン・セグメントまでの距離を返します。 この距離は、指定された点と、指定された終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
x1- 指定されたライン・セグメントの始点のX座標y1- 指定されたライン・セグメントの始点のY座標x2- 指定されたライン・セグメントの終点のX座標y2- 指定されたライン・セグメントの終点のY座標px- 指定されたライン・セグメントに対して測定される、指定された点のX座標py- 指定されたライン・セグメントに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から指定されたライン・セグメントまでの距離を示すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptSegDistSq
public double ptSegDistSq(double px, double py) 点からこのライン・セグメントまでの距離の2乗を返します。 この距離は、指定された点と、現在の線の終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
px- このライン・セグメントに対して測定される、指定された点のX座標py- このライン・セグメントに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から現在のライン・セグメントまでの距離の2乗を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptSegDistSq
public double ptSegDistSq(Point2D pt) Point2Dからこのライン・セグメントまでの距離の2乗を返します。 この距離は、指定された点と、現在の線の終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
pt- このライン・セグメントに対して測定される、指定されたPoint2D。- 戻り値:
- 指定された
Point2Dから現在のライン・セグメントまでの距離の2乗であるdouble値。 - 導入されたバージョン:
- 1.2
- 関連項目:
-
ptSegDist
public double ptSegDist(double px, double py) 点からこのライン・セグメントまでの距離を返します。 この距離は、指定された点と、現在の線の終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
px- このライン・セグメントに対して測定される、指定された点のX座標py- このライン・セグメントに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から現在のライン・セグメントまでの距離を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptSegDist
public double ptSegDist(Point2D pt) Point2Dからこのライン・セグメントまでの距離を返します。 この距離は、指定された点と、現在の線の終点の間でもっとも近い点の間の距離です。 指定された点が終点の間のライン・セグメントと交差する場合、このメソッドは0.0を返します。- パラメータ:
pt- このライン・セグメントに対して測定される、指定されたPoint2D- 戻り値:
- 指定された
Point2Dから現在のライン・セグメントまでの距離であるdouble値。 - 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDistSq
public static double ptLineDistSq(double x1, double y1, double x2, double y2, double px, double py) 点からラインまでの距離の2乗を返します。 この距離は、指定された点と、指定された座標によって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
x1- 指定されたラインの始点のX座標y1- 指定されたラインの始点のY座標x2- 指定されたラインの終点のX座標y2- 指定されたラインの終点のY座標px- 指定されたラインに対して測定される、指定された点のX座標py- 指定されたラインに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から指定されたラインまでの距離の2乗を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDist
public static double ptLineDist(double x1, double y1, double x2, double y2, double px, double py) 点からラインまでの距離を返します。 この距離は、指定された点と、指定された座標によって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
x1- 指定されたラインの始点のX座標y1- 指定されたラインの始点のY座標x2- 指定されたラインの終点のX座標y2- 指定されたラインの終点のY座標px- 指定されたラインに対して測定される、指定された点のX座標py- 指定されたラインに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から指定されたラインまでの距離を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDistSq
public double ptLineDistSq(double px, double py) 点からこのラインまでの距離の2乗を返します。 この距離は、指定された点と、このLine2Dによって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
px- このラインに対して測定される、指定された点のX座標py- このラインに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から現在のラインまでの距離の2乗を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDistSq
public double ptLineDistSq(Point2D pt) 指定されたPoint2Dからこのラインまでの距離の2乗を返します。 この距離は、指定された点と、このLine2Dによって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
pt- このラインに対して測定される、指定されたPoint2D- 戻り値:
- 指定された
Point2Dから現在のラインまでの距離の2乗であるdouble値。 - 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDist
public double ptLineDist(double px, double py) 点からこのラインまでの距離を返します。 この距離は、指定された点と、このLine2Dによって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
px- このラインに対して測定される、指定された点のX座標py- このラインに対して測定される、指定された点のY座標- 戻り値:
- 指定された点から現在のラインまでの距離を表すdouble値。
- 導入されたバージョン:
- 1.2
- 関連項目:
-
ptLineDist
public double ptLineDist(Point2D pt) Point2Dからこのラインまでの距離を返します。 この距離は、指定された点と、このLine2Dによって定義される無限に延長された線上のもっとも近い点の間の距離です。 指定された点が線と交差する場合、このメソッドは0.0を返します。- パラメータ:
pt- 測定される指定されたPoint2D- 戻り値:
- 指定された
Point2Dから現在のラインまでの距離であるdouble値。 - 導入されたバージョン:
- 1.2
- 関連項目:
-
contains
-
contains
-
intersects
public boolean intersects(double x, double y, double w, double h) Shapeの内部が指定された矩形領域の内部と交差しているかどうかをテストします。Shapeの内部と指定された矩形領域の両方に含まれている点が存在する場合、その矩形領域はShapeと交差していると見なされます。Shape.intersects()メソッドを使用すると、次のような場合に、Shape実装は内部的にtrueを返すことができます。-
矩形領域と
Shapeが交差している可能性が高いが、 - この共通部分を正確に判断する計算の負荷がかなり大きい。
Shapesによっては、矩形領域がShapeと交差していない場合でもこのメソッドがtrueを返すことがあります。Areaクラスは、ほとんどのShapeオブジェクトより正確な、幾何学的な共通部分の計算を実行するため、より的確な答えが必要な場合に使用できます。- 定義:
intersects、インタフェースShape- パラメータ:
x- 指定された矩形領域の左上隅のX座標y- 指定された矩形領域の左上隅のY座標w- 指定された矩形領域の幅h- 指定された矩形領域の高さ- 戻り値:
Shapeの内部と矩形領域の内部が交差しているか、またはどちらも交差している可能性が高いが、負荷が大きすぎて共通部分の計算を実行できない場合はtrue、それ以外の場合はfalse。- 導入されたバージョン:
- 1.2
- 関連項目:
-
矩形領域と
-
intersects
public boolean intersects(Rectangle2D r) Shapeの内部が指定されたRectangle2Dの内部と交差しているかどうかをテストします。Shape.intersects()メソッドを使用すると、次のような場合に、Shape実装は内部的にtrueを返すことができます。-
Rectangle2DとShapeが交差している可能性が高いが、 - この共通部分を正確に判断する計算の負荷がかなり大きい。
Shapesによっては、Rectangle2DがShapeと交差していない場合でもこのメソッドがtrueを返すことがあります。Areaクラスは、ほとんどのShapeオブジェクトより正確な、幾何学的な共通部分の計算を実行するため、より的確な答えが必要な場合に使用できます。- 定義:
intersects、インタフェースShape- パラメータ:
r- 指定されたRectangle2D- 戻り値:
Shapeの内部と指定されたRectangle2Dの内部が交差しているか、またはどちらも交差している可能性が高いが、負荷が大きすぎて共通部分の計算を実行できない場合はtrue、それ以外の場合はfalse。- 導入されたバージョン:
- 1.2
- 関連項目:
-
-
contains
public boolean contains(double x, double y, double w, double h) このLine2Dの内部が、指定された矩形座標セットを完全に内包するかどうかを判定します。 このメソッドはShapeインタフェースを実装する必要がありますが、線には領域が含まれないため、Line2Dオブジェクトの場合は常にfalseを返します。 -
contains
public boolean contains(Rectangle2D r) このLine2Dの内部が、指定されたRectangle2Dを完全に内包するかどうかを判定します。 このメソッドはShapeインタフェースを実装する必要がありますが、線には領域が含まれないため、Line2Dオブジェクトの場合は常にfalseを返します。 -
getBounds
public Rectangle getBounds()Shapeを完全に囲む整数のRectangleを返します。 返されたRectangleがShapeを囲む最小のバウンディング・ボックスであるとは限りません。示されたRectangle内にShapeが完全に収まるというだけです。 また、Shapeが整数型の制限範囲を超える場合、返されたRectangleはShapeを完全に囲むことができないこともあります。 通常は、getBounds2Dメソッドの方が、表現の自由度が高いために、比較的ぴったりしたバウンディング・ボックスを返します。「内部性の定義」は、
shapeの定義アウトライン上のポイントが、返されたboundsオブジェクトに含まれるとは見なされない場合もありますが、それらのポイントが元のshapeに含まれていない場合のみであることに注意してください。pointがcontains(point)メソッドに従ってshapeの内側にある場合は、boundsのcontains(point)メソッドに従って、返されたRectangle境界オブジェクトの内側にある必要があります。 具体的には、次のようになります。shape.contains(x,y)にはbounds.contains(x,y)が必要pointがshapeの内側にない場合は、引き続きboundsオブジェクトに含まれている可能性があります。bounds.contains(x,y)はshape.contains(x,y)を示さない -
getPathIterator
public PathIterator getPathIterator(AffineTransform at) このLine2Dの境界を定義する反復オブジェクトを返します。 このクラスのイテレータは、マルチ・スレッドに対して安全ではありません。つまりこのLine2Dクラスでは、このLine2Dオブジェクトの幾何学的図形を変更すると、この幾何学的図形についてすでに進行中の反復処理に影響を及ぼす場合があります。- 定義:
getPathIterator、インタフェースShape- パラメータ:
at- 指定されたAffineTransform- 戻り値:
- この
Line2Dの境界を定義するPathIterator。 - 導入されたバージョン:
- 1.2
-
getPathIterator
public PathIterator getPathIterator(AffineTransform at, double flatness) この平坦化されたLine2Dの境界を定義する反復オブジェクトを返します。 このクラスのイテレータは、マルチ・スレッドに対して安全ではありません。つまりこのLine2Dクラスでは、このLine2Dオブジェクトの幾何学的図形を変更すると、この幾何学的図形についてすでに進行中の反復処理に影響を及ぼす場合があります。- 定義:
getPathIterator、インタフェースShape- パラメータ:
at- 指定されたAffineTransformflatness- 分割された曲線が終点を結ぶ直線によって置換される前に、指定された曲線の制御点が共線から外れることのできる最大距離。Line2Dオブジェクトは常に平坦であるため、このパラメータは無視される。- 戻り値:
- 平坦化された
Line2Dの境界を定義するPathIterator - 導入されたバージョン:
- 1.2
-
clone
public Object clone()このオブジェクトと同じクラスの新しいオブジェクトを作成します。- オーバーライド:
clone、クラスObject- 戻り値:
- このインスタンスの複製。
- スロー:
OutOfMemoryError- 十分なメモリーがない場合。- 導入されたバージョン:
- 1.2
- 関連項目:
-