Ignore:
Timestamp:
2011-12-03T00:14:54+01:00 (12 years ago)
Author:
Don-vip
Message:

Major performance improvements in multipolygons rendering

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/relations/MultipolygonCache.java

    r4626 r4627  
    2626import org.openstreetmap.josm.gui.MapView.LayerChangeListener;
    2727import org.openstreetmap.josm.gui.NavigatableComponent;
    28 import org.openstreetmap.josm.gui.NavigatableComponent.ZoomChangeListener;
    2928import org.openstreetmap.josm.gui.layer.Layer;
    3029import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    3433 *
    3534 */
    36 public class MultipolygonCache implements DataSetListener, LayerChangeListener, ZoomChangeListener, ProjectionChangeListener {
     35public class MultipolygonCache implements DataSetListener, LayerChangeListener, ProjectionChangeListener {
    3736
    3837    private static final MultipolygonCache instance = new MultipolygonCache();
     
    4140   
    4241    private MultipolygonCache() {
    43         this.cache = new HashMap<NavigatableComponent, Map<DataSet, Map<Relation,Multipolygon>>>();
     42        this.cache = new HashMap<NavigatableComponent, Map<DataSet, Map<Relation, Multipolygon>>>();
    4443        Main.addProjectionChangeListener(this);
    4544    }
     
    6665            multipolygon = map2.get(r);
    6766            if (multipolygon == null || forceRefresh) {
    68                 map2.put(r, multipolygon = new Multipolygon(nc, r));
     67                map2.put(r, multipolygon = new Multipolygon(r));
    6968            }
    7069        }
     
    209208
    210209    @Override
    211     public void zoomChanged(/*NavigatableComponent source*/) {
    212         // TODO Change zoomChanged() method to add a "NavigatableComponent source" argument ? (this method is however used at least by one plugin)
    213         //clear(source);
    214         clear();
    215     }
    216 
    217     @Override
    218210    public void projectionChanged(Projection oldValue, Projection newValue) {
    219211        clear();
Note: See TracChangeset for help on using the changeset viewer.