Package com.massifmaps.vectorelements
Class Billboard
java.lang.Object
com.massifmaps.vectorelements.VectorElement
com.massifmaps.vectorelements.Billboard
A base class for billboard elements that can be displayed on the map.
Billboards can either be given a concrete position on the map or be attached to
other billboards.
Billboards can either be given a concrete position on the map or be attached to
other billboards.
-
Method Summary
Modifier and TypeMethodDescriptionReturns the base billboard this billboard is attached to.Returns the bounds of this billboard or the base billboard, if there is one.Returns the geometry object that defines the location of this billboard.Returns the location of the root billboard.floatReturns the rotation angle of this billboard.voidsetBaseBillboard(Billboard baseBillboard) Attaches this billboard to another billboard, so it will always be drawn relative to the base billboard.
If this billboard has a geometry object assigned to it, it will first be set to null.voidsetGeometry(Geometry geometry) Sets the location for this billboard.voidSets the location for this billboard.voidsetRotation(float rotation) Sets the rotation angle of this billboard.Methods inherited from class com.massifmaps.vectorelements.VectorElement
containsMetaDataKey, equals, getId, getMetaData, getMetaDataElement, hashCode, isVisible, notifyElementChanged, setId, setMetaData, setMetaDataElement, setVisible
-
Method Details
-
getBaseBillboard
Returns the base billboard this billboard is attached to.- Returns:
- The base billboard this billboard is attached to. Null if not attached to a billboard.
-
setBaseBillboard
Attaches this billboard to another billboard, so it will always be drawn relative to the base billboard.
If this billboard has a geometry object assigned to it, it will first be set to null.- Parameters:
baseBillboard- The billboard this billboard will be attached to.
-
getBounds
Returns the bounds of this billboard or the base billboard, if there is one.- Overrides:
getBoundsin classVectorElement- Returns:
- The bounds of this billboard.
-
getRootGeometry
Returns the location of the root billboard. If this billboard has a location,
this method is equavalent to the Billboard::getGeometry method. If this billboard is attached
to another billboard, the hierarchy is traveled recursively and the location of the root
billboard is returned.- Returns:
- The geometry object that defines the location of the root billboard. Null if there's no root billboard.
-
getGeometry
Returns the geometry object that defines the location of this billboard.- Overrides:
getGeometryin classVectorElement- Returns:
- The geometry object of this billboard.
-
setGeometry
Sets the location for this billboard. If this billboard is attached
to another billboard, it will first be detached.- Parameters:
geometry- The new geometry object that defines the location of this billboard.
-
setPos
Sets the location for this billboard. If this billboard is attached
to another billboard, it will first be detached.- Parameters:
pos- The new map position that defines the location of this billboard.
-
getRotation
public float getRotation()Returns the rotation angle of this billboard.- Returns:
- The rotation angle of this billboard in degrees.
-
setRotation
public void setRotation(float rotation) Sets the rotation angle of this billboard. The rotation angle is ignored if orientation mode is
set to BillboardOrientation::FACE_CAMERA_BILLBOARD. If the orientation mode is set to
BillboardOrientation::FACE_CAMERA_GROUND then the rotation angle is added to the calculated billboard
angle. If the orientation mode is set to BillboardOrientation::GROUND then the rotation means absolute
rotation, where 0 is points to the north.- Parameters:
rotation- The new rotation angle of this billboard in degrees.
-