Package org.opentrafficsim.core.object
Class StaticObject
- java.lang.Object
-
- org.djutils.event.EventProducer
-
- org.opentrafficsim.core.object.StaticObject
-
- All Implemented Interfaces:
java.io.Serializable
,Locatable
,EventProducerInterface
,Identifiable
,Drawable
,ObjectInterface
public class StaticObject extends EventProducer implements ObjectInterface, java.io.Serializable, Identifiable, 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-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
$LastChangedDate: 2015-07-24 02:58:59 +0200 (Fri, 24 Jul 2015) $, @version $Revision: 1147 $, by $Author: averbraeck $, initial version Nov 26, 2015
BSD-style license. See OpenTrafficSim License.- Author:
- Alexander Verbraeck, Peter Knoppers
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.djutils.event.EventProducer
eventProducerImpl
-
Fields inherited from interface org.djutils.event.EventProducerInterface
FIRST_POSITION, LAST_POSITION
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
StaticObject(java.lang.String id, OTSLine3D geometry, Length height)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StaticObject
clone(Network newNetwork, boolean animation)
Clone the StaticObject for e.g., copying a network.static StaticObject
create(java.lang.String id, OTSLine3D geometry)
Make a static object with zero height and carry out the initialization after it has been fully created.static StaticObject
create(java.lang.String id, OTSLine3D geometry, Length height)
Make a static object and carry out the initialization after it has been fully created.javax.media.j3d.Bounds
getBounds()
java.lang.String
getFullId()
OTSLine3D
getGeometry()
Length
getHeight()
java.lang.String
getId()
DirectedPoint
getLocation()
java.io.Serializable
getSourceId()
protected void
init()
Initialize the object after it has been fully created.java.lang.String
toString()
-
Methods inherited from class org.djutils.event.EventProducer
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, fireUnverifiedTimedEvent, getEventTypesWithListeners, getListenerReferences, hasListeners, numberOfListeners, removeAllListeners, removeAllListeners, removeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.djutils.event.EventProducerInterface
addListener, addListener, addListener, addListener, getEventTypesWithListeners, hasListeners, numberOfListeners, removeListener
-
-
-
-
Method Detail
-
init
protected void init() throws NetworkException
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(java.lang.String id, OTSLine3D geometry, Length height) throws NetworkException
Make a static object and carry out the initialization after it has been fully created.- Parameters:
id
- String; the idgeometry
- OTSLine3D; 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(java.lang.String id, OTSLine3D 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
- OTSLine3D; 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 final OTSLine3D getGeometry()
- Specified by:
getGeometry
in interfaceObjectInterface
- Returns:
- the outline geometry of the object.
-
getHeight
public final Length getHeight()
- Specified by:
getHeight
in interfaceObjectInterface
- Returns:
- the height of the object (can be Length.ZERO).
-
getId
public final java.lang.String getId()
- Specified by:
getId
in interfaceIdentifiable
-
getFullId
public java.lang.String getFullId()
- Specified by:
getFullId
in interfaceObjectInterface
- Returns:
- the full id that makes the id unique in the network.
-
getLocation
public DirectedPoint getLocation()
- Specified by:
getLocation
in interfaceLocatable
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
clone
public StaticObject clone(Network newNetwork, boolean animation) throws NetworkException
Clone the StaticObject for e.g., copying a network.- Parameters:
newNetwork
- Network; the new network to which the clone belongsanimation
- boolean; whether to (re)create animation or not- Returns:
- a clone of this object
- Throws:
NetworkException
- in case the cloning fails
-
getSourceId
public java.io.Serializable getSourceId()
- Specified by:
getSourceId
in interfaceEventProducerInterface
- Specified by:
getSourceId
in classEventProducer
-
-