[OpenLayers-Trac] [OpenLayers] #517: Vector: Renderer problems in IE6
OpenLayers
trac at openlayers.org
Fri Mar 9 05:46:34 EST 2007
#517: Vector: Renderer problems in IE6
-------------------------+--------------------------------------------------
Reporter: openlayers | Owner:
Type: bug | Status: new
Priority: major | Milestone:
Component: general | Version:
Resolution: | Keywords: vector, editing, renderer, ie
-------------------------+--------------------------------------------------
Changes (by openlayers):
* priority: minor => major
Comment:
I've done some debugging with the VML renderer. I am not an expert in VML
but it seems the problem is: VML can't handle floating point numbers as
coordinates. So you can't draw shapes into the map coordinate space.
for example:
i have a line geometry
lon=55.107421875,lat=3.33984375,lon=63.896484375,lat=-0.791015625
the generated VML results in something like:
{{{
<v:group id=OpenLayers.Layer.Vector_8181_root
style="WIDTH: 1260px; HEIGHT: 500px" coordsize="111,-44"
coordorigin="40,27">
<v:shape id=OpenLayers.Geometry.Point_8947
style="LEFT: 55px; WIDTH: 1px; TOP: 3px; HEIGHT: 1px"
coordsize="10,10" filled="t" fillcolor="black" stroked="t"
strokecolor="blue" strokeweight="1pt"
path=" m0,-5 at-5,-5,5,5,0,-5,0,-5 x e">
<v:path id=OpenLayers.Geometry.Point_8947_path></v:path>
<v:fill opacity="26214f"></v:fill>
<v:stroke opacity="1"></v:stroke>
</v:shape>
<v:shape id=OpenLayers.Geometry.LinearRing_9037
style="LEFT: 55px; WIDTH: 0px; TOP: 3px; HEIGHT: 0px"
coordsize="0,0" filled="t" fillcolor="black" stroked="t"
strokecolor="blue" strokeweight="1pt"
path=" m0,0 l0,0 xe">
<v:fill opacity="26214f"></v:fill>
<v:stroke opacity="1"></v:stroke>
</v:shape>
<v:shape id=OpenLayers.Geometry.Point_6311
style="LEFT: 64px; WIDTH: 1px; TOP: 0px; HEIGHT: 1px"
coordsize="10,10" filled="t" fillcolor="black" stroked="t"
strokecolor="yellow" strokeweight="1pt"
path=" m0,-5 at-5,-5,5,5,0,-5,0,-5 x e">
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:path id=OpenLayers.Geometry.Point_6311_path></v:path>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
</v:shape>
<v:shape id=OpenLayers.Geometry.LineString_3400
style="LEFT: 55px; WIDTH: 8px; TOP: 0px; HEIGHT: 4px"
coordsize="9,4" filled="f" fillcolor="black" stroked="t"
strokecolor="yellow" strokeweight="1pt"
path=" m0,4 l9,0,0,4 e">
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
<v:fill opacity="0"></v:fill>
<v:stroke opacity="1"></v:stroke>
</v:shape>
</v:group>
}}}
In fact the shape should be: style="LEFT: 55.107421875px; WIDTH: 1px; TOP:
3.33984375px; HEIGHT: 1px"
Thats why for small scales the renderer doesn't work.
Alex
--
Ticket URL: <http://trac.openlayers.org/ticket/517#comment:1>
OpenLayers <http://openlayers.org/>
A free AJAX map viewer
More information about the Trac
mailing list