[OpenLayers-Trac] Re: [OpenLayers] #2876: VML rendering issue with
polygons with zero area interior rings
OpenLayers
trac-20090302 at openlayers.org
Thu Oct 14 20:27:02 EDT 2010
#2876: VML rendering issue with polygons with zero area interior rings
--------------------------+-------------------------------------------------
Reporter: tschaub | Owner: tschaub
Type: feature | Status: assigned
Priority: minor | Milestone: 2.11 Release
Component: Renderer.VML | Version: SVN
Keywords: | State: Review
--------------------------+-------------------------------------------------
Comment(by tschaub):
Brilliant find. This indeed fixes the problem (it would be great to
demonstrate the issue to the IE team somehow).
Since we are taking a performance hit here, I think it's worth measuring
cost/benefit. With this patch, when we render polygons that have interior
rings with many points, we are doing an unnecessary area calculation (an
extra loop through all ring points with a bit of calculation for each).
The majority of the cases where this IE VML bug is going to affect us is
during interior ring digitizing. As a compromise, we could say that we
close the path if there are three spatially distinct points in an interior
ring. This doesn't treat zero-area rings with three or more distinct
points, but we could say that we're not going to encounter those much (you
can create one temporarily with the DrawFeature control by digitizing an L
shaped interior ring and then hovering over the middle point - but you
can't add this ring to the polygon because it has zero area).
We can do this second method without much cost, because we are already
looping through all the ring points to assemble the VML path string. I'll
attach a patch that does this for consideration.
--
Ticket URL: <http://trac.openlayers.org/ticket/2876#comment:4>
OpenLayers <http://openlayers.org/>
A free AJAX map viewer
More information about the Trac
mailing list