Thanks, I'll check out the patch and give that a try. I need to rework my example as I am experiencing the same problem in IE on my production app but the example I knocked up isn't showing that (in fact it looks like it errors out in ie).
Pierre GIRAUD wrote: > > Ok, I just remembered this was an already discussed issue. > http://trac.openlayers.org/ticket/719 > http://trac.openlayers.org/ticket/713 > > Regards, > Pierre > > On Jan 19, 2008 12:13 PM, Pierre GIRAUD <[EMAIL PROTECTED]> wrote: >> For your information, your code is correct and I think I've found what >> part of the OpenLayers' code is involved in this weird behavior. >> I'll try to find out a fix or at least a workaround for this issue. If >> your interested in fixing this too, you can have a look at the SVG >> renderer (lib/OpenLayers/Renderer/SVG.js) and in particular at >> getShortString(), inValidRange() and MAX_PIXEL. >> >> I plan to fill a bug report, but don't hesitate to do so if your quicker. >> >> Hum, I was unable to reproduce the issue under IE with your example. >> >> Regards, >> Pierre >> >> >> >> On Jan 18, 2008 5:23 PM, cmose <[EMAIL PROTECTED]> wrote: >> > >> > I have several lineStrings on a vector layer that originate from the >> same >> > lat/lon coordinate. As you zoom in on the map, the lineStrings randomly >> > disappear, e.g,. if you start out with 6 lines originating from the >> same >> > point, as you zoom in on the map lines will randomly disappear until >> there >> > are <6 lines left. >> > >> > I've verified this behavior using a modified version of >> vector-features.html >> > from the examples directory. I don't have anywhere to host my example >> but >> > here is my modified script declaration from vector-features.html: >> > >> > <script src="../lib/OpenLayers.js" type="text/javascript"></script> >> > <script type="text/javascript"> >> > var map; >> > >> > function init(){ >> > map = new OpenLayers.Map('map'); >> > var layer = new OpenLayers.Layer.WMS( "OpenLayers WMS", >> > "http://labs.metacarta.com/wms/vmap0", {layers: >> 'basic'} >> > ); >> > map.addLayer(layer); >> > >> > /* >> > * Layer style >> > */ >> > // we want opaque external graphics and non-opaque internal >> > graphics >> > var layer_style = OpenLayers.Util.extend({}, >> > OpenLayers.Feature.Vector.style['default']); >> > layer_style.fillOpacity = 0.2; >> > layer_style.graphicOpacity = 1; >> > >> > /* >> > * Blue style >> > */ >> > var style_blue = OpenLayers.Util.extend({}, layer_style); >> > style_blue.strokeColor = "blue"; >> > style_blue.fillColor = "blue"; >> > >> > /* >> > * Green style >> > */ >> > var style_green = { >> > strokeColor: "#00FF00", >> > strokeWidth: 2, >> > pointRadius: 4, >> > pointerEvents: "visiblePainted" >> > }; >> > >> > /* >> > * Mark style >> > */ >> > var style_mark = OpenLayers.Util.extend({}, >> > OpenLayers.Feature.Vector.style['default']); >> > // each of the three lines below means the same, if only >> one of >> > // them is active: the image will have a size of 24px, and >> the >> > // aspect ratio will be kept >> > // style_mark.pointRadius = 12; >> > // style_mark.graphicHeight = 24; >> > // style_mark.graphicWidth = 24; >> > >> > // if graphicWidth and graphicHeight are both set, the >> aspect >> > ratio >> > // of the image will be ignored >> > style_mark.graphicWidth = 24; >> > style_mark.graphicHeight = 20; >> > style_mark.graphicXOffset = -(style_mark.graphicWidth/2); >> // >> > this is the default value >> > style_mark.graphicYOffset = -style_mark.graphicHeight; >> > style_mark.externalGraphic = "../img/marker.png"; >> > >> > var vectorLayer = new OpenLayers.Layer.Vector("Simple >> Geometry", >> > {style: layer_style}); >> > var point = OpenLayers.Geometry.Point; >> > var ls = OpenLayers.Geometry.LineString; >> > var vector = OpenLayers.Feature.Vector; >> > var lines = []; >> > var features = []; >> > >> > lines.push(new ls([new point(1,50), new >> point(75,60)])); >> > lines.push(new ls([new point(1,50), new >> point(-60,-30)])); >> > lines.push(new ls([new point(1,50), new >> point(40,89)])); >> > lines.push(new ls([new point(1,50), new >> point(-150,-55)])); >> > lines.push(new ls([new point(1,50), new >> point(-30,-25)])); >> > lines.push(new ls([new point(1,50), new >> point(-5,-10)])); >> > >> > for(var i=0;i<lines.length;i++){ >> > features.push(new vector(lines[i], null, >> style_green)); >> > } >> > >> > map.addLayer(vectorLayer); >> > map.setCenter(new OpenLayers.LonLat(1,50), 5); >> > vectorLayer.addFeatures(features); >> > } >> > </script> >> > >> > The map is initialized with a zoom level of 5. Once you get to 8 one of >> the >> > 6 lines disappears, leaving you with 5. Zoom level 9 removes all but >> one >> > line. Zoom level 10 removes all lines. >> > >> > I haven't traced the issue beyond drawFeature() in Vector.js. I've >> tested >> > the example in Firefox thus far but in my app I'm getting the same >> behavior >> > in ff and ie. >> > >> > Any ideas? >> > -- >> > View this message in context: >> http://www.nabble.com/Multiple-linestrings-originating-from-the-same-point-disappear-when-zooming-tp14952551p14952551.html >> > Sent from the OpenLayers Users mailing list archive at Nabble.com. >> > >> > _______________________________________________ >> > Users mailing list >> > [email protected] >> > http://openlayers.org/mailman/listinfo/users >> > >> > _______________________________________________ > Users mailing list > [email protected] > http://openlayers.org/mailman/listinfo/users > > -- View this message in context: http://www.nabble.com/Multiple-linestrings-originating-from-the-same-point-disappear-when-zooming-tp14952551p15047347.html Sent from the OpenLayers Users mailing list archive at Nabble.com. _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
