1 package org.opentrafficsim.road.gtu.lane.object;
2
3 import java.rmi.RemoteException;
4 import java.util.UUID;
5
6 import javax.naming.NamingException;
7
8 import nl.tudelft.simulation.dsol.SimRuntimeException;
9 import nl.tudelft.simulation.dsol.animation.D2.Renderable2D;
10
11 import org.djunits.value.vdouble.scalar.Length;
12 import org.opentrafficsim.core.dsol.OTSAnimatorInterface;
13 import org.opentrafficsim.core.dsol.OTSDEVSSimulatorInterface;
14 import org.opentrafficsim.core.geometry.OTSGeometryException;
15 import org.opentrafficsim.core.gtu.GTUException;
16 import org.opentrafficsim.core.network.NetworkException;
17 import org.opentrafficsim.core.network.OTSNetwork;
18 import org.opentrafficsim.road.gtu.lane.object.animation.DefaultBlockAnimation;
19 import org.opentrafficsim.road.network.lane.Lane;
20
21
22
23
24
25
26
27
28
29
30
31 public class LaneBlock extends AbstractTrafficLight
32 {
33
34 private static final long serialVersionUID = 1L;
35
36
37
38
39
40
41
42
43
44
45
46
47
48 public LaneBlock(final Lane lane, final Length.Rel position, final OTSDEVSSimulatorInterface simulator,
49 final Class<? extends Renderable2D> animationClass, final OTSNetwork network)
50 throws GTUException, NetworkException, NamingException, SimRuntimeException, OTSGeometryException
51 {
52 super(UUID.randomUUID().toString(), lane, position, simulator, network);
53 try
54 {
55 new DefaultBlockAnimation(this, getSimulator());
56 if (simulator instanceof OTSAnimatorInterface && animationClass != null)
57 {
58
59 }
60 }
61 catch (RemoteException exception)
62 {
63 throw new NetworkException(exception);
64 }
65 }
66
67
68 @Override
69 public String toString()
70 {
71 return "LaneBlock [lane=" + this.laneTL + ", position=" + this.positionTL + "]";
72 }
73
74 }