]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.district.maps/src/org/simantics/maps/sg/MapInfoNode.java
Optimization of district scene graph node rendering
[simantics/district.git] / org.simantics.district.maps / src / org / simantics / maps / sg / MapInfoNode.java
1 package org.simantics.maps.sg;
2
3 import java.awt.Graphics2D;
4 import java.awt.geom.Rectangle2D;
5
6 import org.simantics.scenegraph.g2d.G2DNode;
7
8 /**
9  * @author Tuukka Lehtonen
10  */
11 public abstract class MapInfoNode extends G2DNode {
12
13     private static final long serialVersionUID = 5514354427232700777L;
14
15     protected boolean enabled = true;
16     protected Rectangle2D rect = new Rectangle2D.Double();
17
18     public MapInfoNode() {
19         super();
20     }
21
22     @Override
23     public Rectangle2D getBoundsInLocal() {
24         return null;
25     }
26
27     public boolean isEnabled() {
28         return enabled;
29     }
30
31     public void setEnabled(boolean enabled) {
32         this.enabled = enabled;
33     }
34
35     protected void setMapInfoNextY(Graphics2D g, double y) {
36         g.setRenderingHint(MapInfoConstants.KEY_MAP_INFO_Y_COORDINATE, y);
37     }
38
39     protected double getMapInfoNextY(Graphics2D g) {
40         Double d = (Double) g.getRenderingHint(MapInfoConstants.KEY_MAP_INFO_Y_COORDINATE);
41         return d != null ? d : 0.0;
42     }
43
44 }