Hi Dave, great patch. I have applied the patch and tested with Google Maps Version 2.93. It seems to work.
MfG Arnd Wippermann http://gis.ibbeck.de/ginfo/ overstdr wrote: > > > Christopher Schmidt-4 wrote: >> >> On Wed, Dec 12, 2007 at 11:03:34PM +0100, Arnd Wippermann wrote: >>> Hi, >>> >>> Google Maps have a new layer >>> (http://googlemapsapi.blogspot.com/2007/12/v294-terrain-and-new-maptypecontr >>> ol-to.html). With API 2.93 you can request a terrain layer. Looks quite >>> good. I have tested it with OpenLayers. But now with API 2.93 the >>> flickering >>> while panning is returned. >> >> Yep. There is no API method for what we abuse the Google Maps API to do, >> so we're tied to the version of Google Maps that I was able to find >> already reverse engineered -- specifically, the version used by MapBuzz. >> >> It would be nice if Google could provide a method to do what we >> currently hack, or something providing similar functionality: >> >> http://trac.openlayers.org/browser/trunk/openlayers/lib/OpenLayers/Layer/Google.js#L346 >> >> Until then, we're going to be stuck with the single version of the >> Google Maps API. >> >> Regards, >> -- >> Christopher Schmidt >> MetaCarta >> _______________________________________________ >> Users mailing list >> [email protected] >> http://openlayers.org/mailman/listinfo/users >> >> > > > Hi, > > I think I have found another "hack" that solves the flickering panning > problem with v 2.93...below are the changes I have made to > OpenLayers.Layer.Google.js: > > Line 123: > //can we do smooth panning? (some versions don't) (overstdr: > modified to handle 2.93) > if ( !this.mapObject.G || (!this.mapObject.G.qb && > !this.mapObject.G.vb) || > (typeof this.mapObject.G.qb != "function" && typeof > this.mapObject.G.vb != "function")) { > this.dragPanMapObject = null; > } > > LINE 358: > dragPanMapObject: function(dX, dY) { > var newX = this.mapObject.G.left - dX; > var newY = this.mapObject.G.top + dY; > if(this.mapObject.G.qb) { > this.mapObject.G.qb(newX, newY); > } else if(this.mapObject.G.vb) { > this.mapObject.G.vb(newX, newY); > } > } > > As you can see the main change I made was just to check if G.vb exists > instead of G.qb...it appears 2.93 uses .vb rather than .qb...Definately > test before using...i still need to apply to become a developer for > OpenLayers, so I havent posted this ticket/fix to CVS. > > Regards, > > Dave Overstrom > Terra Solutions Group, LLC > -- View this message in context: http://www.nabble.com/Info-on-Google-Maps-Terrain-layer-%28G_PHYSICAL_MAP%29-tp14305053p15641291.html Sent from the OpenLayers Users mailing list archive at Nabble.com. _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
