|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--gishur.x.XObject | +--gishur.x.XPoint
Ein Punkt-Objekt für die Ebene in einem Weltkoordinatensystem mit Double-Werten.
Field Summary | |
static double |
IDENTICAL
Der minimale Abstand zwischen zwei Punkten, ab dem sie 'gleich' sind. |
static byte |
ORIENTATION_COLLINEAR
Punkt liegt auf der Geraden. |
static byte |
ORIENTATION_LEFT
Punkt liegt links. |
static byte |
ORIENTATION_RIGHT
Punkt liegt rechts. |
static double |
WEAK_IDENTICAL
|
double |
x
X- und Y-Koordinate. |
double |
y
X- und Y-Koordinate. |
Constructor Summary | |
XPoint()
Leerer Konstruktor. |
|
XPoint(double x,
double y)
Erzeugt einen Punkt (0,0). |
|
XPoint(XPoint p)
Copy-Konstruktor. |
|
XPoint(XPoint a,
XPoint b)
Erzeugt einen Punkt, der genau zwischen a und b liegt. |
Method Summary | |
static double |
angle(double x,
double y,
double x1,
double y1,
double x2,
double y2)
Liefert den Winkel (x1,y1)-(x,y)-(x2,y2) (in Radiant). |
double |
angle(XPoint q)
Liefert den Winkel des Strahls von this nach q mit der X-Achse |
double |
angle(XPoint q,
XPoint r)
Liefert den Winkel q-this-r (in Radiant). |
void |
copy(XPoint p)
Copy-Routine übernimmt Daten von anderen Objekten. |
double |
distance(XPoint p)
Euklidischer Abstand zum Beszugspunkt p. |
boolean |
equals(double x,
double y)
Wie equals(Object), nur mit der Übergabe von Punktparametern. |
boolean |
equals(java.lang.Object O)
Überschreibt Object.equals(Object) |
boolean |
isInfinite()
Liefert true, falls der Punkt im 'Unendlichen' liegt, d.h. ein unendlicher Endpunkt eines unendlichen Segmentes o.ä. ist. |
double |
length()
Liefert die Länge des Vektors (das ist dasselbe wie die Norm des Vektors). |
double |
norm()
Liefert die euklidische Norm des Punktes (also den euklidischen Abstand zum Nullpunkt. |
void |
normalize()
Normalisiert den Vektor. |
static byte |
opposite(byte orientation)
Liefert zur 'Seite' orientation die entgegengesetzte Orientierungskonstante. |
byte |
orientation(XPoint a,
XPoint b)
Liefert die Orientierung des Punktes this relativ zur gerichteten Geraden a->b. |
static byte |
orientation(XPoint a,
XPoint b,
XPoint c)
Liefert die Orientierung des Punktes c relativ zur gerichteten Geraden a->b. |
void |
rotate(XPoint center,
double angle)
Dreht das Objekt um den Punkt center mit dem Winkel angle. |
void |
rotate(XPoint center,
XPoint start,
XPoint end)
Dreht das Objekt um den Punkt center mit dem Winkel start-center-end. |
void |
scale(XPoint center,
double xscale,
double yscale)
Skaliert das Objekt mit xscale und yscale so, daß der Punkt middle davon unberührt bleibt. |
void |
set(double x,
double y)
Setzt den Punkt auf (x,y). |
void |
setLength(double length)
Setzt die Länge des Vektors auf den übergebenen Wert, sofern der Punkt nicht (0,0) (also der 0-Vektor) ist (die Richtung bleibt erhalten). setLength(1) bedeutet beispielsweise die Normalisierung des Vektors. |
void |
setPolar(double angle,
double length)
Setzt den Punkt auf (angle,length) in Polarkoordinaten |
double |
squareDistance(XPoint p)
Quadrierte Distanz dieses Punktes zum Punkt p. |
java.lang.String |
toString()
Überschreibt Object.toString(). |
java.lang.String |
toString(boolean brackets)
Liefert die String-Repräsentation des Punktes ohne den Klassennamen. |
XObject |
transform_XObject(double m00,
double m01,
double m02,
double m10,
double m11,
double m12)
Transforms this XObject by the given affine
transformation matrix. |
void |
transform(double m00,
double m01,
double m02,
double m10,
double m11,
double m12)
Transformiert das Objekt mit der übergebenen Transformationsmatrix. |
void |
translate(double dx,
double dy)
Verschiebt das Objekt um den Vektor (dx,dy). |
void |
translatePolar(double angle,
double length)
Verschiebt den Punkt um den durch den Winkel angle und der Länge length in Polarkoordinaten beschriebenen Vektor. |
boolean |
weak_equals(XPoint p)
Vergleicht zwei Punkte mit höherer Toleranz. |
double |
x()
Liefert die X-Koordinaten des Punktes |
double |
y()
Liefert die Y-Koordinaten des Punktes |
Methods inherited from class gishur.x.XObject |
clone, copy, getMutable, inverseTransform_XObject, mutable, restoreMutability, rotate_XObject, scale_XObject, transform_XObject, translate_XObject, translate_XObject |
Methods inherited from class java.lang.Object |
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
public static final double IDENTICAL
public static final double WEAK_IDENTICAL
public static final byte ORIENTATION_LEFT
public static final byte ORIENTATION_RIGHT
public static final byte ORIENTATION_COLLINEAR
public double x
public double y
Constructor Detail |
public XPoint()
public XPoint(double x, double y)
x,y
- Koordinaten für den Punktpublic XPoint(XPoint p)
p
- Objekt, von dem Daten übernommen werdenpublic XPoint(XPoint a, XPoint b)
a,b
- Punkte, zwischen denen der neue Punkt liegen sollMethod Detail |
public void copy(XPoint p)
p
- Objekt, von dem Daten übernommen werdenpublic java.lang.String toString(boolean brackets)
brackets
- Falls true, wird "(x,y)" statt "x,y" zurückgegeben.public java.lang.String toString()
toString
in class XObject
Object.toString()
public boolean equals(java.lang.Object O)
equals
in class java.lang.Object
O
- Objekt, mit dem verglichen werden sollObject.equals(java.lang.Object)
public boolean weak_equals(XPoint p)
p
- Punkt mit dem verglichen werden sollpublic boolean equals(double x, double y)
x,y
- Koordinaten des Vergleichspunktespublic double x()
public double y()
public void set(double x, double y)
x,y
- neue Koordinatenpublic void setPolar(double angle, double length)
angle
- Winkel des Vektorslength
- Länge des Vektorspublic void setLength(double length)
length
- neue Länge des Vektorspublic void translatePolar(double angle, double length)
angle
- Winkel des Verschiebungsvektorslength
- Länge des Verschiebungsvektorspublic void normalize()
public static final byte orientation(XPoint a, XPoint b, XPoint c)
a,b
- Punkte, die die Gerade beschreibenc
- Punkt, dessen Orientierung zu a->b brechnet werden sollpublic static final byte opposite(byte orientation)
orientation
- Orientierungskonstantepublic byte orientation(XPoint a, XPoint b)
a,b
- Punkte, die die Gerade beschreibenpublic static final double angle(double x, double y, double x1, double y1, double x2, double y2)
(x1,y1),(x2,y2)
- die Schenkelendpunkte des Winkelspublic double angle(XPoint q, XPoint r)
q,r
- die Schenkelendpunkte des Winkelspublic double angle(XPoint q)
q
- Punktpublic double squareDistance(XPoint p)
p
- Bezugspunktpublic double distance(XPoint p)
p
- Bezugspunktpublic double norm()
public double length()
public boolean isInfinite()
public void transform(double m00, double m01, double m02, double m10, double m11, double m12)
transform
in interface AffineXTransformable
m00,m01,m02
- erste Zeile der Transformationsmatrixm10,m11,m12
- zweite Zeile der Transformationsmatrixpublic void scale(XPoint center, double xscale, double yscale)
scale
in interface AffineXTransformable
middle
- Mittelpunkt, der nicht verschoben werden sollxscale
- Skalierung der X-Achseyscale
- Skalierung der Y-Achsepublic void rotate(XPoint center, double angle)
rotate
in interface AffineXTransformable
center
- Drehpunktangle
- Drehwinkelpublic void rotate(XPoint center, XPoint start, XPoint end)
rotate
in interface AffineXTransformable
center
- Drehpunktstart
- Startpunktend
- Endpunktpublic void translate(double dx, double dy)
translate
in interface AffineXTransformable
(dx,dy)
- Verschiebungsvektorpublic XObject transform_XObject(double m00, double m01, double m02, double m10, double m11, double m12)
this
XObject by the given affine
transformation matrix.transform_XObject
in class XObject
m00,m01,m02
- first row of the transformation matrixm10,m11,m12
- second row of the transformation matrixthis
, only if it is
mutable, otherwise a new XObject represeting the transformed object).
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |