Package org.opentrafficsim.core.object
Class StaticObject
java.lang.Object
org.djutils.event.LocalEventProducer
org.opentrafficsim.core.object.StaticObject
- All Implemented Interfaces:
Serializable,Remote,nl.tudelft.simulation.dsol.animation.Locatable,org.djutils.base.Identifiable,org.djutils.event.EventProducer,OtsLocatable,Drawable,LocatedObject
public class StaticObject
extends org.djutils.event.LocalEventProducer
implements LocatedObject, Drawable
A static object with a height that a GTU might have to avoid, or which can cause occlusion for perception. All objects are
potential event producers, which allows them to signal that their state has changed.
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
- Author:
- Alexander Verbraeck, Peter Knoppers
- See Also:
-
Field Summary
Fields inherited from interface org.djutils.event.EventProducer
FIRST_POSITION, LAST_POSITION -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedStaticObject(String id, org.djutils.draw.point.OrientedPoint2d location, org.djutils.draw.line.PolyLine2d geometry, org.djunits.value.vdouble.scalar.Length height) -
Method Summary
Modifier and TypeMethodDescriptionstatic StaticObjectMake a static object with zero height and carry out the initialization after it has been fully created.static StaticObjectcreate(String id, org.djutils.draw.line.Polygon2d geometry, org.djunits.value.vdouble.scalar.Length height) Make a static object and carry out the initialization after it has been fully created.org.djutils.draw.line.PolyLine2dfinal org.djunits.value.vdouble.scalar.Lengthfinal StringgetId()org.djutils.draw.point.OrientedPoint2dprotected voidinit()Initialize the object after it has been fully created.toString()Methods inherited from class org.djutils.event.LocalEventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, getEventListenerMap, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.djutils.event.EventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, getEventListenerMap, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListenerMethods inherited from interface nl.tudelft.simulation.dsol.animation.Locatable
getDirZ, getZ
-
Constructor Details
-
StaticObject
protected StaticObject(String id, org.djutils.draw.point.OrientedPoint2d location, org.djutils.draw.line.PolyLine2d geometry, org.djunits.value.vdouble.scalar.Length height) - Parameters:
id- String; the idlocation- OrientedPoint2d; location.geometry- PolyLine2d; the top-level 2D outline of the objectheight- Length; the height of the object
-
-
Method Details
-
init
Initialize the object after it has been fully created.- Throws:
NetworkException- e.g. on error registering the object in the network
-
create
public static StaticObject create(String id, org.djutils.draw.line.Polygon2d geometry, org.djunits.value.vdouble.scalar.Length height) throws NetworkException Make a static object and carry out the initialization after it has been fully created.- Parameters:
id- String; the idgeometry- Polygon2d; the top-level 2D outline of the objectheight- Length; the height of the object- Returns:
- the static object
- Throws:
NetworkException- e.g. on error registering the object in the network
-
create
public static StaticObject create(String id, org.djutils.draw.line.Polygon2d geometry) throws NetworkException Make a static object with zero height and carry out the initialization after it has been fully created.- Parameters:
id- String; the idgeometry- Polygon2d; the top-level 2D outline of the object- Returns:
- the static object
- Throws:
NetworkException- e.g. on error registering the object in the network
-
getGeometry
public org.djutils.draw.line.PolyLine2d getGeometry()- Specified by:
getGeometryin interfaceLocatedObject- Returns:
- the outline geometry of the object.
-
getHeight
public final org.djunits.value.vdouble.scalar.Length getHeight()- Specified by:
getHeightin interfaceLocatedObject- Returns:
- the height of the object (can be Length.ZERO).
-
getId
- Specified by:
getIdin interfaceorg.djutils.base.Identifiable
-
getFullId
- Specified by:
getFullIdin interfaceLocatedObject- Returns:
- the full id that makes the id unique in the network.
-
getLocation
public org.djutils.draw.point.OrientedPoint2d getLocation()- Specified by:
getLocationin interfacenl.tudelft.simulation.dsol.animation.Locatable- Specified by:
getLocationin interfaceOtsLocatable
-
getBounds
- Specified by:
getBoundsin interfacenl.tudelft.simulation.dsol.animation.Locatable- Specified by:
getBoundsin interfaceOtsLocatable
-
toString
-