Started on proper date line wrapping
What we want in the end is vector tiles repeated just as raster tiles. This change only avoids repeated tiles with the same content being rendered and stored in the cache.
This commit is contained in:
@@ -222,6 +222,9 @@ ol.renderer.canvas.VectorLayer.prototype.renderFrame =
|
||||
var sketchCanvasRenderer = new ol.renderer.canvas.Renderer(
|
||||
sketchCanvas, sketchTransform);
|
||||
var renderedFeatures = {};
|
||||
// TODO: wrap date line properly
|
||||
var numCols = Math.ceil((tileRangeExtent.maxX - tileRangeExtent.minX) /
|
||||
tileSize.width / tileResolution);
|
||||
var tile, tileContext, tileCoord, key, tileExtent, tileState, x, y;
|
||||
// render features by geometry type
|
||||
var filters = this.geometryFilters_,
|
||||
@@ -229,7 +232,7 @@ ol.renderer.canvas.VectorLayer.prototype.renderFrame =
|
||||
i, filter, type, features, symbolizer;
|
||||
for (x = tileRange.minX; x <= tileRange.maxX; ++x) {
|
||||
for (y = tileRange.minY; y <= tileRange.maxY; ++y) {
|
||||
tileCoord = new ol.TileCoord(z, x, y);
|
||||
tileCoord = new ol.TileCoord(z, goog.math.modulo(x, numCols), y);
|
||||
key = tileCoord.toString();
|
||||
tile = this.tileCache_[key];
|
||||
tileExtent = tileGrid.getTileCoordExtent(tileCoord);
|
||||
|
||||
Reference in New Issue
Block a user