First step in uncoupling replay creation and rendering
Signed-off-by: Guillaume Beraudo <guillaume.beraudo@camptocamp.com>
This commit is contained in:
@@ -480,13 +480,18 @@ class CanvasVectorLayerRenderer extends CanvasLayerRenderer {
|
||||
} else {
|
||||
vectorSource.forEachFeatureInExtent(extent, render);
|
||||
}
|
||||
replayGroup.finish();
|
||||
|
||||
const replayGroupInstructions = replayGroup.finish();
|
||||
const renderingReplayGroup = new CanvasReplayGroup(
|
||||
getRenderTolerance(resolution, pixelRatio), extent, resolution,
|
||||
pixelRatio, vectorSource.getOverlaps(), this.declutterTree_, vectorLayer.getRenderBuffer());
|
||||
renderingReplayGroup.replaceInstructions(replayGroupInstructions);
|
||||
|
||||
this.renderedResolution_ = resolution;
|
||||
this.renderedRevision_ = vectorLayerRevision;
|
||||
this.renderedRenderOrder_ = vectorLayerRenderOrder;
|
||||
this.renderedExtent_ = extent;
|
||||
this.replayGroup_ = replayGroup;
|
||||
this.replayGroup_ = renderingReplayGroup;
|
||||
|
||||
this.replayGroupChanged = true;
|
||||
return true;
|
||||
|
||||
@@ -226,8 +226,11 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
|
||||
render.call(this, feature);
|
||||
}
|
||||
}
|
||||
replayGroup.finish();
|
||||
sourceTile.setReplayGroup(layer, tile.tileCoord.toString(), replayGroup);
|
||||
const replayGroupInstructions = replayGroup.finish();
|
||||
const renderingReplayGroup = new CanvasReplayGroup(0, sharedExtent, resolution,
|
||||
pixelRatio, source.getOverlaps(), this.declutterTree_, layer.getRenderBuffer());
|
||||
renderingReplayGroup.replaceInstructions(replayGroupInstructions);
|
||||
sourceTile.setReplayGroup(layer, tile.tileCoord.toString(), renderingReplayGroup);
|
||||
}
|
||||
replayState.renderedRevision = revision;
|
||||
replayState.renderedRenderOrder = renderOrder;
|
||||
|
||||
Reference in New Issue
Block a user