OpenLayers.Bounds.prototype.scaleXY = function(ratioX, ratioY, origin){
    if(origin == null){
        origin = this.getCenterLonLat();
    }
    var origx,origy;

    // get origin coordinates
    if(origin.CLASS_NAME == "OpenLayers.LonLat"){
        origx = origin.lon;
        origy = origin.lat;
    } else {
        origx = origin.x;
        origy = origin.y;
    }

    var left = (this.left - origx) * ratioX + origx;
    var bottom = (this.bottom - origy) * ratioY + origy;
    var right = (this.right - origx) * ratioX + origx;
    var top = (this.top - origy) * ratioY + origy;
    
    return new OpenLayers.Bounds(left, bottom, right, top);
};


