Introduce Instruction executors

Executors are use to render instructions.
They do not contain cod for building instructions.

Signed-off-by: Guillaume Beraudo <guillaume.beraudo@camptocamp.com>
This commit is contained in:
Guillaume Beraudo
2018-11-13 16:26:29 +01:00
parent ecf79a9ec2
commit fcf470fc8d
6 changed files with 1865 additions and 24 deletions

View File

@@ -24,6 +24,7 @@ import {
scale as scaleTransform,
translate as translateTransform
} from '../../transform.js';
import InstructionsGroupExectuor from '../../render/canvas/InstructionsGroupExecutor.js';
/**
@@ -227,7 +228,7 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
}
}
const replayGroupInstructions = replayGroup.finish();
const renderingReplayGroup = new CanvasReplayGroup(0, sharedExtent, resolution,
const renderingReplayGroup = new InstructionsGroupExectuor(0, sharedExtent, resolution,
pixelRatio, source.getOverlaps(), this.declutterTree_, layer.getRenderBuffer());
renderingReplayGroup.replaceInstructions(replayGroupInstructions);
sourceTile.setReplayGroup(layer, tile.tileCoord.toString(), renderingReplayGroup);