public class DOTPointPainter extends java.lang.Object implements DisplayObjectPainter
Die Implementation von DisplayObjectPainter zum Zeichnen von Punktobjekten.
Modifier and Type | Class and Description |
---|---|
private static class |
DOTPointPainter.ShapeWithReferencePoint |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
DYNAMIC_ATTRIBUTE_SCALED |
static java.lang.String |
DYNAMIC_ATTRIBUTE_UNSCALED |
static java.lang.String[] |
DYNAMIC_TEXT_ITEMS |
static java.lang.String |
GET_INFO_GET_DESCRIPTION |
static java.lang.String |
GET_NAME |
static java.lang.String |
GET_NAME_OR_PID_OR_ID |
static java.lang.String |
GET_PID_OR_ID |
static java.lang.String |
LINKER_HALBKREIS |
static java.lang.String |
OBERER_HALBKREIS |
static java.lang.String |
RECHTER_HALBKREIS |
static java.lang.String[] |
STATIC_TEXT_ITEMS |
static java.lang.String |
UNTERER_HALBKREIS |
Constructor and Description |
---|
DOTPointPainter() |
Modifier and Type | Method and Description |
---|---|
private java.awt.Color |
determineColor(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.lang.Double |
determineDiameter(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.awt.Color |
determineFillColor(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.lang.Double |
determineStrokeWidth(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.lang.String |
determineText(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private int |
determineTextSize(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private int |
determineTextStyle(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.lang.Integer |
determineTransparency(DisplayObject displayObject,
DOTPoint dotPoint,
java.lang.String primitiveFormName) |
private java.awt.geom.AffineTransform |
getAngleTransformation(java.lang.Double translationFactor,
java.lang.Double angle) |
java.awt.Rectangle |
getBoundingRectangle(DisplayObject displayObject,
int type)
Diese Methode gibt das umgebende Rechteck des DisplayObjects für den angebenen Typen zurück.
|
java.util.List<java.lang.Object> |
getCoordinates(java.util.List<java.lang.Object> coordinates,
int type)
Gibt zu dem Darstellungsobjekt und dem Typ die Koordinaten zurück.
|
private java.awt.Shape |
getSemiCircle(double centerX,
double centerY,
java.lang.Double radius,
java.lang.String orientation) |
private DOTPointPainter.ShapeWithReferencePoint |
getShape(java.awt.geom.Point2D point,
DOTPoint.PrimitiveForm primitiveForm) |
private boolean |
lineIntersectsWithShapes(java.awt.geom.Line2D line,
java.util.List<java.awt.Shape> shapes) |
void |
paintDisplayObject(MapPane mapPane,
java.awt.Graphics2D g2D,
DisplayObject displayObject,
boolean selected)
Implementationen dieser Methode werden aufgerufen, wenn das DisplayObject gezeichnet werden soll.
|
private void |
stretchLineAtTheBeginning(java.awt.geom.Line2D line,
double stretchFactor) |
private void |
stretchLineAtTheEnd(java.awt.geom.Line2D line,
double stretchFactor) |
public static final java.lang.String OBERER_HALBKREIS
public static final java.lang.String RECHTER_HALBKREIS
public static final java.lang.String UNTERER_HALBKREIS
public static final java.lang.String LINKER_HALBKREIS
public static final java.lang.String DYNAMIC_ATTRIBUTE_UNSCALED
public static final java.lang.String DYNAMIC_ATTRIBUTE_SCALED
public static final java.lang.String GET_NAME
public static final java.lang.String GET_NAME_OR_PID_OR_ID
public static final java.lang.String GET_PID_OR_ID
public static final java.lang.String GET_INFO_GET_DESCRIPTION
public static final java.lang.String[] STATIC_TEXT_ITEMS
public static final java.lang.String[] DYNAMIC_TEXT_ITEMS
public void paintDisplayObject(MapPane mapPane, java.awt.Graphics2D g2D, DisplayObject displayObject, boolean selected)
DisplayObjectPainter
Implementationen dieser Methode werden aufgerufen, wenn das DisplayObject gezeichnet werden soll. Innerhalb seiner Implemantation sollte für displayObject
die Methode DisplayObject.getCoordinates(int type)
aufgerufen werden. Diese bewerkstelligt einen lazy Cache; sind die Daten nicht vorhanden, so wird die Erzeugung an die Methode DisplayObjectPainter.getCoordinates(java.util.List<java.lang.Object>, int)
delegiert, wo auch die Auswertung des Integer-Wertes stattfindet.
paintDisplayObject
in interface DisplayObjectPainter
mapPane
- die Kartenansichtg2D
- ein Graphics2D-Objekt zum ZeichnendisplayObject
- das DisplayObjectselected
- true genau dann, wenn das DisplayObject selektiert ist
private boolean lineIntersectsWithShapes(java.awt.geom.Line2D line, java.util.List<java.awt.Shape> shapes)
private void stretchLineAtTheBeginning(java.awt.geom.Line2D line, double stretchFactor)
private void stretchLineAtTheEnd(java.awt.geom.Line2D line, double stretchFactor)
private java.awt.geom.AffineTransform getAngleTransformation(java.lang.Double translationFactor, java.lang.Double angle)
private DOTPointPainter.ShapeWithReferencePoint getShape(java.awt.geom.Point2D point, DOTPoint.PrimitiveForm primitiveForm)
private java.awt.Shape getSemiCircle(double centerX, double centerY, java.lang.Double radius, java.lang.String orientation)
private java.lang.Double determineDiameter(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private java.lang.Double determineStrokeWidth(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private java.awt.Color determineFillColor(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private java.lang.Integer determineTransparency(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private int determineTextStyle(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private int determineTextSize(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private java.awt.Color determineColor(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
private java.lang.String determineText(DisplayObject displayObject, DOTPoint dotPoint, java.lang.String primitiveFormName)
public java.awt.Rectangle getBoundingRectangle(DisplayObject displayObject, int type)
DisplayObjectPainter
Diese Methode gibt das umgebende Rechteck des DisplayObjects für den angebenen Typen zurück. Über die Bedeutung des Integer-Wertes type
wird in DisplayObjectPainter.getCoordinates(java.util.List<java.lang.Object>, int)
informiert. Diese Methode wird nur aus DisplayObject.getBoundingRectangle( int type) heraus aufgerufen, wo bereits ein lazy Cache für die Rückgabewerte installiert ist.
getBoundingRectangle
in interface DisplayObjectPainter
displayObject
- das DisplayObjectpublic java.util.List<java.lang.Object> getCoordinates(java.util.List<java.lang.Object> coordinates, int type)
Gibt zu dem Darstellungsobjekt und dem Typ die Koordinaten zurück.
getCoordinates
in interface DisplayObjectPainter
coordinates
- die Originalkoordinatentype
- der gewünschte Koordinatentyp