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/gui/NavigatableComponent.java

    r4126 r4627  
    77import java.awt.Point;
    88import java.awt.Rectangle;
     9import java.awt.geom.AffineTransform;
    910import java.awt.geom.Point2D;
    1011import java.util.ArrayList;
     
    6162    public static final IntegerProperty PROP_SNAP_DISTANCE = new IntegerProperty("mappaint.node.snap-distance", 10);
    6263
     64    public static final String PROPNAME_CENTER = "center";
     65    public static final String PROPNAME_SCALE  = "scale";
     66   
    6367    /**
    6468     * the zoom listeners
     
    229233    }
    230234
     235    public AffineTransform getAffineTransform() {
     236        return new AffineTransform(
     237                1.0/scale, 0.0, 0.0, -1.0/scale, getWidth()/2.0 - center.east()/scale, getHeight()/2.0 + center.north()/scale);
     238    }
     239   
    231240    /**
    232241     * Return the point on the screen where this Coordinate would be.
     
    335344            EastNorth oldCenter = center;
    336345            center = newCenter;
    337             firePropertyChange("center", oldCenter, newCenter);
     346            firePropertyChange(PROPNAME_CENTER, oldCenter, newCenter);
    338347        }
    339348        if (scale != newScale) {
    340349            double oldScale = scale;
    341350            scale = newScale;
    342             firePropertyChange("scale", oldScale, newScale);
     351            firePropertyChange(PROPNAME_SCALE, oldScale, newScale);
    343352        }
    344353
Note: See TracChangeset for help on using the changeset viewer.