1 package org.opentrafficsim.road.gtu.lane.object.animation;
2
3 import java.awt.Color;
4 import java.awt.Graphics2D;
5 import java.awt.image.ImageObserver;
6 import java.rmi.RemoteException;
7
8 import javax.naming.NamingException;
9
10 import nl.tudelft.simulation.dsol.animation.D2.Renderable2D;
11 import nl.tudelft.simulation.language.d3.DirectedPoint;
12
13 import org.opentrafficsim.core.dsol.OTSSimulatorInterface;
14 import org.opentrafficsim.core.network.animation.PaintPolygons;
15 import org.opentrafficsim.road.gtu.lane.object.CSEBlock;
16
17
18
19
20
21
22
23
24
25
26
27
28 public class CSEBlockAnimation extends Renderable2D
29 {
30
31 private Color fillColor;
32
33
34 private static final DirectedPoint POINT_000 = new DirectedPoint();
35
36
37
38
39
40
41
42
43
44 public CSEBlockAnimation(final CSEBlock source, final OTSSimulatorInterface simulator, final Color fillColor)
45 throws NamingException, RemoteException
46 {
47 super(source, simulator);
48 setFillColor(fillColor);
49 setTranslate(false);
50 setRotate(false);
51 }
52
53
54 @Override
55 public final void paint(final Graphics2D graphics, final ImageObserver observer)
56 {
57 graphics.setColor(this.fillColor);
58 PaintPolygons.paintMultiPolygon(graphics, this.fillColor, POINT_000, ((CSEBlock) this.source).getGeometry(),
59 true);
60 }
61
62
63
64
65 public final Color getFillColor()
66 {
67 return this.fillColor;
68 }
69
70
71
72
73 public final void setFillColor(Color fillColor)
74 {
75 this.fillColor = fillColor;
76 }
77
78
79 @Override
80 public final String toString()
81 {
82 return "CSEBlockAnimation [getSource()=" + this.getSource() + "]";
83 }
84
85 }