Remove vector mode for vector tile rendering
This commit is contained in:
@@ -111,7 +111,7 @@ Features for `updates` must have an id set by the feature reader or `ol.Feature#
|
|||||||
|
|
||||||
### 28
|
### 28
|
||||||
|
|
||||||
`renderMode` must be `'image'`, `'hybrid'` or `'vector'`.
|
`renderMode` must be `'image'` or `'hybrid'`.
|
||||||
|
|
||||||
### 29
|
### 29
|
||||||
|
|
||||||
|
|||||||
@@ -94,9 +94,8 @@ class VectorTileLayer extends BaseVectorLayer {
|
|||||||
let renderMode = options.renderMode || VectorTileRenderType.HYBRID;
|
let renderMode = options.renderMode || VectorTileRenderType.HYBRID;
|
||||||
assert(renderMode == undefined ||
|
assert(renderMode == undefined ||
|
||||||
renderMode == VectorTileRenderType.IMAGE ||
|
renderMode == VectorTileRenderType.IMAGE ||
|
||||||
renderMode == VectorTileRenderType.HYBRID ||
|
renderMode == VectorTileRenderType.HYBRID,
|
||||||
renderMode == VectorTileRenderType.VECTOR,
|
28); // `renderMode` must be `'image'` or `'hybrid'`
|
||||||
28); // `renderMode` must be `'image'`, `'hybrid'` or `'vector'`
|
|
||||||
|
|
||||||
if (options.declutter && renderMode == VectorTileRenderType.IMAGE) {
|
if (options.declutter && renderMode == VectorTileRenderType.IMAGE) {
|
||||||
renderMode = VectorTileRenderType.HYBRID;
|
renderMode = VectorTileRenderType.HYBRID;
|
||||||
|
|||||||
@@ -17,6 +17,5 @@
|
|||||||
*/
|
*/
|
||||||
export default {
|
export default {
|
||||||
IMAGE: 'image',
|
IMAGE: 'image',
|
||||||
HYBRID: 'hybrid',
|
HYBRID: 'hybrid'
|
||||||
VECTOR: 'vector'
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -58,9 +58,7 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
|
|||||||
* @param {import("../../layer/VectorTile.js").default} layer VectorTile layer.
|
* @param {import("../../layer/VectorTile.js").default} layer VectorTile layer.
|
||||||
*/
|
*/
|
||||||
constructor(layer) {
|
constructor(layer) {
|
||||||
|
super(layer);
|
||||||
const renderMode = layer.getRenderMode();
|
|
||||||
super(layer, renderMode === VectorTileRenderType.VECTOR);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Declutter tree.
|
* Declutter tree.
|
||||||
@@ -86,9 +84,8 @@ class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
|
|||||||
*/
|
*/
|
||||||
this.tmpTransform_ = createTransform();
|
this.tmpTransform_ = createTransform();
|
||||||
|
|
||||||
// Use lower resolution for pure vector rendering. Closest resolution otherwise.
|
// Use closest resolution.
|
||||||
this.zDirection = renderMode === VectorTileRenderType.VECTOR ? 1 : 0;
|
this.zDirection = 0;
|
||||||
|
|
||||||
|
|
||||||
listen(labelCache, EventType.CLEAR, this.handleFontsChanged_, this);
|
listen(labelCache, EventType.CLEAR, this.handleFontsChanged_, this);
|
||||||
|
|
||||||
|
|||||||
@@ -97,31 +97,6 @@ describe('ol.renderer.canvas.VectorTileLayer', function() {
|
|||||||
expect(renderer.zDirection).to.be(0);
|
expect(renderer.zDirection).to.be(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('uses lower resolution for pure vector rendering', function() {
|
|
||||||
const testLayer = new VectorTileLayer({
|
|
||||||
renderMode: VectorTileRenderType.VECTOR,
|
|
||||||
source: source,
|
|
||||||
style: layerStyle
|
|
||||||
});
|
|
||||||
const renderer = new CanvasVectorTileLayerRenderer(testLayer);
|
|
||||||
expect(renderer.zDirection).to.be(1);
|
|
||||||
});
|
|
||||||
|
|
||||||
it('does not render images for pure vector rendering', function() {
|
|
||||||
const testLayer = new VectorTileLayer({
|
|
||||||
renderMode: VectorTileRenderType.VECTOR,
|
|
||||||
source: source,
|
|
||||||
style: layerStyle
|
|
||||||
});
|
|
||||||
map.removeLayer(layer);
|
|
||||||
map.addLayer(testLayer);
|
|
||||||
const spy = sinon.spy(CanvasVectorTileLayerRenderer.prototype,
|
|
||||||
'renderTileImage_');
|
|
||||||
map.renderSync();
|
|
||||||
expect(spy.callCount).to.be(0);
|
|
||||||
spy.restore();
|
|
||||||
});
|
|
||||||
|
|
||||||
it('does not render replays for pure image rendering', function() {
|
it('does not render replays for pure image rendering', function() {
|
||||||
const testLayer = new VectorTileLayer({
|
const testLayer = new VectorTileLayer({
|
||||||
renderMode: VectorTileRenderType.IMAGE,
|
renderMode: VectorTileRenderType.IMAGE,
|
||||||
|
|||||||
Reference in New Issue
Block a user