Opened 10 months ago

Last modified 8 months ago

#2836 reopened defect

MVT rendering issues

Reported by: jng Owned by: jng
Priority: medium Milestone: 4.0
Component: Tile Service Version:
Severity: major Keywords:
Cc: External ID:

Description (last modified by jng)

  • We need to apply a buffer on the MVT tile region so that client applications can properly stitch together features that cross tile boundaries
  • Multi-polygons that cross tile boundaries are not being rendered Multi-geometries are not supported in the vector tile spec (see: 4.3.4 Geometry Types), so such multi-geometries should be exploded into its constituent geometries
  • Geometries should be simplified at higher levels
  • Certain geometries near tile boundaries are not rendering at certain levels. Examples include:

Change History (4)

comment:1 Changed 10 months ago by jng

Description: modified (diff)

comment:2 Changed 8 months ago by jng

Resolution: fixed
Status: assignedclosed

In 9834:

Merged revision(s) 9828-9833 from sandbox/jng/mvt_render_fixes:

#2836: Re-instate clipping of MVT tile geometries at the stylizer level by having MVTRenderer::RequiresClipping??() return true and having MVTRenderer::GetBounds??() return a buffered extents (where buffer is the default of 80 screen pixels). We still do not have the undesired tile border artifact, which tells us that we're buffering by the correct amount. Having said that, this commit also adds a flag to render tile borders for visual debugging purposes. If you see tile border artifacts, it should now be due to this new flag being true.

#2836: Remove geometry clipping code from the ProcessXXX renderer methods. This eliminates the tile border artifact we are experiencing in client applications like OpenLayers/QGIS. If we are meant to clip, we should probably do it at the Stylizer level by having our MVTRenderer return true for RequiresClipping??() and find a way to let the renderer customize the clip extents.
........

comment:3 Changed 8 months ago by jng

Description: modified (diff)
Resolution: fixed
Status: closedreopened

Re-opening as this was erroneously closed as a result of the merge commit

comment:4 Changed 8 months ago by jng

Description: modified (diff)
Note: See TracTickets for help on using tickets.