|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--gishur.x.XObject | +--gishur.x.XBaseline | +--gishur.x.XLine | +--gishur.x.XHalfplane
Eine Halbebene (also eine Gerade mit einer Innenseite).
Fields inherited from class gishur.x.XBaseline |
DIRECTION_DOWN, DIRECTION_LEFT, DIRECTION_RIGHT, DIRECTION_UP, INFINITE_BOUND |
Fields inherited from interface gishur.x.AreaIntersectable |
POINT_INSIDE, POINT_ON_EDGE, POINT_OUTSIDE |
Constructor Summary | |
XHalfplane()
Leerer Konstruktor. |
|
XHalfplane(double x1,
double y1,
double x2,
double y2,
byte inside)
Konstruiert eine Halbebene durch die Punkte (x1,y1) und (x2,y2) und mit der Innenseite inside dezüglich der Richtung (x1,y1)->(x2,y2). |
|
XHalfplane(XHalfplane l)
Copy-Konstruktor. |
|
XHalfplane(XLine l,
byte inside)
Geraden-Konstruktor. |
|
XHalfplane(XPoint s,
double slope,
byte inside)
Konstruiert eine Halbebene durch den Punkt s mit der Steigung slope und der Innenseite inside von s ausgehend in positiver X-Richtung. |
|
XHalfplane(XPoint s,
XPoint t,
byte inside)
Konstruiert eine Halbebene durch die Punkte s und t mit der Innenseite inside bezüglich der Richtung (s->t) Als Source-Punkt wird s genommen. |
Method Summary | |
boolean |
contains(double x,
double y)
Liefert true, falls das Objekt den Punkt (x,y) enthält, d.h. der Schnitt mit dem Punkt nicht leer ist. |
boolean |
convex()
Liefert true, falls das Objekt konvex ist. |
void |
copy(XHalfplane l)
Copy-Routine übernimmt Daten von anderen Objekten. |
XPolygon |
getInfiniteXPolygon()
Liefert das Schnittpolygon der Halbebene mit der 'unendlichen' Bounding Box. |
boolean |
in(XPoint q)
Gibt true zrück, falls der Punkt in der Halbebene liegt - auf dem Rand gilt hierbei als außerhalb. |
Area |
intersection(AreaIntersectable O,
boolean is_convex)
Flächenschnitt mit dem Objekt O. |
byte |
locate(XPoint q)
Point-Location. |
byte |
orientation()
Liefert die Orientierung der Halbebene, also die Seite, auf der Innen ist bzgl. der Halbebene betrachtet als gerichtete Gerade. |
void |
setOrientation(byte inside)
Setzt die Orientierung der Halbebene |
boolean |
supportsIntersection(AreaIntersectable O,
boolean is_convex)
Liefert true, falls diese Klasse den Schnitt mit dem übergebenen Gebiet unterstützt. |
java.lang.String |
toString()
Überschreibt Object.toString(). |
java.lang.String |
toString(boolean points,
boolean slope,
boolean y_abs,
boolean orientation)
Liefert einen String mit Angaben über das Objekt. |
Methods inherited from class gishur.x.XLine |
copy, equals, intersection, set, supportsIntersection, toString |
Methods inherited from class gishur.x.XBaseline |
angle, angle, calculatePoint, closestPoint, copyInfiniteChain, direction, flip, getDirectionVector, getInfiniteBoundIndex, getInfiniteBounds, getInfiniteEndPoint, getInfinitePoint, getInfiniteSegment, getPointInLineDirection, horizontal, incident, liesOn, oppositeDirection, orientation, orthogonal, orthogonal, parallel, plumb, plumbTo, rotate, rotate, rotateTo, scale, set, set, similarDirection, slope, source, target, transform_XObject, transform, translate, vector, vertical, y_abs |
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 |
Constructor Detail |
public XHalfplane()
public XHalfplane(double x1, double y1, double x2, double y2, byte inside)
x1,y1
- erster Punkt, durch den die Trenngerade gelegt wirdx2,y2
- zweiter Punkt, durch den die Trenngerade gelegt wirdinside
- gibt an, auf welcher Seite 'innen' istpublic XHalfplane(XPoint s, XPoint t, byte inside)
s
- erster Punkt, durch den die Trenngerade gelegt wirdt
- zweiter Punkt, durch den die Trenngerade gelegt wirdinside
- gibt an, auf welcher Seite 'innen' istpublic XHalfplane(XPoint s, double slope, byte inside)
s
- Punkt, durch den die Gerade gelegt wirdslope
- Steigung (dies ist kein Winkel!)inside
- gibt an, auf welcher Seite 'innen' istpublic XHalfplane(XLine l, byte inside)
l
- XLine-Objektinside
- gibt an, auf welcher Seite 'innen' istpublic XHalfplane(XHalfplane l)
l
- Objekt, von dem Daten übernommen werdenMethod Detail |
public void copy(XHalfplane l)
l
- Objekt, von dem Daten übernommen werdenpublic java.lang.String toString(boolean points, boolean slope, boolean y_abs, boolean orientation)
points
- Start-Endpunktinformationenslope
- Steigungsinformation enthalteny_abs
- y_abs-Informationen enthaltenpublic java.lang.String toString()
toString
in class XLine
Object.toString()
public byte orientation()
public void setOrientation(byte inside)
public boolean in(XPoint q)
p
- zu testender Punktlocate(gishur.x.XPoint)
public byte locate(XPoint q)
locate
in interface AreaIntersectable
p
- zu lokalisierender Punktpublic boolean contains(double x, double y)
contains
in class XBaseline
x,y
- Koordinaten des Punktespublic XPolygon getInfiniteXPolygon()
public boolean convex()
convex
in interface AreaIntersectable
public boolean supportsIntersection(AreaIntersectable O, boolean is_convex)
supportsIntersection
in interface AreaIntersectable
O
- zu schneidendes Objektis_convex
- falls true, ist das Objekt O konvexpublic Area intersection(AreaIntersectable O, boolean is_convex)
intersection
in interface AreaIntersectable
O
- zu schneidendes Objektis_convex
- falls true, ist das Objekt O konvexIntersectionException
- falls der Schnitt nicht
durchgeführt werden konnte.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |