[mapguide-trac] #632: Polylines can disappear completely using
AGG renderer
MapGuide Open Source
trac_mapguide at osgeo.org
Thu Jan 8 14:58:16 EST 2009
#632: Polylines can disappear completely using AGG renderer
-------------------------------+--------------------------------------------
Reporter: jbirch | Owner: tonyfang
Type: defect | Status: closed
Priority: medium | Milestone:
Component: Rendering Service | Version: 2.0.1
Severity: major | Resolution: fixed
Keywords: agg, gd, renderer | External_id: 1161231
-------------------------------+--------------------------------------------
Changes (by tonyfang):
* status: assigned => closed
* resolution: => fixed
Comment:
In AGGRenderer::DrawScreenPolyline, the outline renderer is used to draw
the polylines if the line weight is thin (<= 3 pixels). For Parcels.sdf
(from the Redding data set), it is 1 pixel. The outline renderer seems to
be dropping vertices when they are overlapping -- thus the lines don't all
get rendered when the polyline data is dense.
I removed the outline renderer code in AGGRenderer::DrawScreenPolyline,
forcing it to stroke the lines as polygons -- this is code path taken when
the lines are thick (> 3 pixels). After doing so, all the dense lines are
rendered, yielding the expected results.
There is a performance penalty. With my debug MG server, using the outline
renderer, it takes 2.39 sec to render (albeit with missing lines). Using
the stroke as polygon code, it takes 3.407 sec to render.
The user can get around this rendering slowness by using standard
optimization techniques such as generalization and/or scale ranges. So
this slowness will probably not affect our end users in general.
http://trac.osgeo.org/mapguide/changeset/3454
--
Ticket URL: <http://trac.osgeo.org/mapguide/ticket/632#comment:5>
MapGuide Open Source <http://mapguide.osgeo.org/>
MapGuide Open Source Internals
More information about the mapguide-trac
mailing list