I forgot a line in the example. I forgot to set the pointlist to a new array. Please add this line:
pointList = []; Right before this line: newPoint = new OpenLayers.Geometry.Point(-12250153.3626406,4852001.6114048); Thanks so much for looking at this! Linda On Wed, Jun 18, 2008 at 8:48 AM, Linda Rawson <[EMAIL PROTECTED]> wrote: > Absolutely. Anything to help me here! I so want to go the new > version. In this example, if I remove the first line I add then all > of the zoom buttons work perfectly. The line appears at all zoom > levels. The minute I add more than one line the problem occurs. I > had all the style sheet stuff in the first example because I noticed > you changed from relative positioning to absolute so I thought maybe > that was causing the problem but that is not the case. It looks > complex but all I am doing is adding 2 lines and a marker to a > spherical mercator projection map. This works in 2.5 just not in 2.6. > > <html xmlns="http://www.w3.org/1999/xhtml"> > <head> > <title>Linda Rawson Test Case</title><link > href="http://www.openlayers.org/api/theme/default/style.css" > rel="stylesheet" type="text/css"> > <style> > #map { > width: 720px; > height: 720px; > border: 1px solid #4B3624; > background: White; > } > .olControlAttribution { bottom: 0px!important } > </style> > <script src="http://www.openlayers.org/api/OpenLayers.js" > type="text/javascript"></script> > <script > src='http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAjpkAC9ePGem0lIq5XcMiuhR_wWLPFku8Ix9i2SXYRVK3e45q1BQUd_beF8dtzKET_EteAjPdGDwqpQ'></script> > <script type="text/javascript">var map; > > // avoid pink tiles > OpenLayers.IMAGE_RELOAD_ATTEMPTS = 3; > OpenLayers.Util.onImageLoadErrorColor = "transparent"; > > var vectorLayer; > var markerLayer, boxes, newPoint; > > function init(){ > var options = { > projection: new OpenLayers.Projection("EPSG:900913"), > //displayProjection: new OpenLayers.Projection("EPSG:4326"), > units: "m", > numZoomLevels: 19, > maxResolution: 156543.0339, > maxExtent: new OpenLayers.Bounds(-20037508, -20037508, > 20037508, 20037508.34) > }; > map = new OpenLayers.Map('map', options); > > // create Google Mercator layers > var gmap = new OpenLayers.Layer.Google( > "Google Streets", > {'sphericalMercator': true} > ); > map.addLayer(gmap); > > map.addControl(new OpenLayers.Control.PanZoomBar()); > map.addControl(new OpenLayers.Control.MousePosition()); > > vectorLayer = new OpenLayers.Layer.Vector("Trails"); > markerLayer = new OpenLayers.Layer.Markers("WayPoints"); > > map.addLayers([vectorLayer,markerLayer]); > > var style_trail = OpenLayers.Util.extend({}, > OpenLayers.Feature.Vector.style['default']); > style_trail.strokeColor = "green"; > style_trail.strokeWidth = 5; > > var pointList = []; > > newPoint = new > OpenLayers.Geometry.Point(-13653735.8487833,5726045.3578081); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653731.3960036,5726056.5070679); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653730.8394062,5726044.7207079); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653743.1958697,5726043.9243328); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653754.1051798,5726046.9505586); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653760.4503907,5726056.5070679); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653767.4635187,5726065.5857612); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653830.136392,5726052.2066375); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-13653846.5003571,5726042.3315828); > pointList.push(newPoint); > > var lineFeature = new OpenLayers.Feature.Vector( > new OpenLayers.Geometry.LineString(pointList)); > lineFeature.fid = 52730; > vectorLayer.addFeatures(lineFeature); > > newPoint = new > OpenLayers.Geometry.Point(-12250153.3626406,4852001.6114048); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-12194315.5060664,4800503.5113048); > pointList.push(newPoint); > newPoint = new > OpenLayers.Geometry.Point(-12180445.0975155,4873109.008858); > pointList.push(newPoint); > > lineFeature = new OpenLayers.Feature.Vector( > new > OpenLayers.Geometry.LineString(pointList),null,style_trail); > lineFeature.fid = 52751; > vectorLayer.addFeatures([lineFeature]); > > var size = new OpenLayers.Size(15, 15); > var offset = new OpenLayers.Pixel(-(size.w/2), -size.h); > var icon = new > OpenLayers.Icon('http://boston.openguides.org/markers/AQUA.png', size, > offset); > markerLayer.addMarker(new OpenLayers.Marker(new > OpenLayers.LonLat((newPoint.x + 400), (newPoint.y - 400)), icon)); > > map.setCenter(new OpenLayers.LonLat(newPoint.x, newPoint.y), 13) > } > > function zoomToScale(zoom) { > if (zoom == 8) map.zoomToScale(3385.5001275); > else if(zoom == 7) map.zoomToScale(6771.000255); > else if (zoom == 6) map.zoomToScale(13542); > else if (zoom == 5) map.zoomToScale(27084.001020); > else if (zoom == 4) map.zoomToScale(54168.001020); > else if (zoom == 3) map.zoomToScale(108337); > else if (zoom == 2) map.zoomToScale(3466752.1306573446); > else if (zoom == 1) map.zoomToScale(13867008.522629378); > else if (zoom == 0) map.zoomToScale(55468034.09051751); > } > > </script> > </head> > <body onLoad="init()"> > <h1 id="title">Linda's Example. Push Zoom 5. You see lines. Push > Zoom 6. No lines.</h1> > <div id="map"> > </div> > <button onClick="zoomToScale(5);">Zoom 5</button> > <button onClick="zoomToScale(6);">Zoom 6</button> > <button onClick="zoomToScale(7);">Zoom 7</button> > <button onClick="zoomToScale(8);">Zoom 8</button> > </body> > </html> > > > > On Wed, Jun 18, 2008 at 1:47 AM, Andreas Hocevar > <[EMAIL PROTECTED]> wrote: >> >> Linda, >> >> it would be easier to help you if you provide a more stripped down >> example that reproduces your problem. >> >> Regards, >> Andreas. >> >> On Mon, Jun 16, 2008 at 6:13 AM, Linda Rawson <[EMAIL PROTECTED]> wrote: >> > Any 2.6 vector author's out there? I still have this issue. >> > >> > Thanks, >> > Linda >> > >> > On Sun, Jun 8, 2008 at 3:07 PM, Linda Rawson <[EMAIL PROTECTED]> wrote: >> >> >> >> No. With 2.5 you see the lines at all zoom levels in both IE and >> >> Firefox. This must be a problem in Firefox as well. Maybe that will >> >> help you guys trouble shoot. >> >> >> >> Linda >> >> >> >> On Sun, Jun 8, 2008 at 2:11 PM, Eric Lemoine <[EMAIL PROTECTED]> wrote: >> >> > On Wed, Jun 4, 2008 at 7:24 PM, Linda Rawson <[EMAIL PROTECTED]> >> >> > wrote: >> >> >> I have a problem with upgrading to 2.6. I need some of the other >> >> >> features and I cannot get this to work. I have tried to find out >> >> >> where in the code it has changed but I cannot find it. >> >> >> >> >> >> ONLY in IE does this not work. >> >> >> >> >> >> Extract this example. You will see a green line and an aqua marker on >> >> >> the screen. >> >> >> >> >> >> Push the button that says Zoom 5. >> >> >> >> >> >> You still have a green line and an aqua marker on the screen. >> >> >> >> >> >> Push the button that says Zoom 6. >> >> >> >> >> >> No lines. Not for Zoom 7 or Zoom 8 either. >> >> > >> >> > With FF2 I see the line after Zoom 6, but its coords seem to have >> >> > changed. I don't see line after Zoom 7 and 8. Is this expected? >> >> > >> >> > -- >> >> > Eric >> >> > >> >> >> >> >> >> >> >> -- >> >> Linda Rawson >> > >> > >> > >> > -- >> > Linda Rawson >> > _______________________________________________ >> > Users mailing list >> > [email protected] >> > http://openlayers.org/mailman/listinfo/users >> > >> > > > > > -- > Linda Rawson > -- Linda Rawson _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
