Shared module for vector tile render type enum

This commit is contained in:
Tim Schaub
2016-12-27 13:42:44 -07:00
parent e24d093d28
commit 5b937f02ae
4 changed files with 32 additions and 31 deletions
+2 -2
View File
@@ -4014,7 +4014,7 @@ olx.layer.VectorOptions.prototype.visible;
* opacity: (number|undefined), * opacity: (number|undefined),
* preload: (number|undefined), * preload: (number|undefined),
* renderBuffer: (number|undefined), * renderBuffer: (number|undefined),
* renderMode: (ol.layer.VectorTile.RenderType|string|undefined), * renderMode: (ol.layer.VectorTileRenderType|string|undefined),
* renderOrder: (function(ol.Feature, ol.Feature):number|undefined), * renderOrder: (function(ol.Feature, ol.Feature):number|undefined),
* source: (ol.source.VectorTile|undefined), * source: (ol.source.VectorTile|undefined),
* style: (ol.style.Style|Array.<ol.style.Style>|ol.StyleFunction|undefined), * style: (ol.style.Style|Array.<ol.style.Style>|ol.StyleFunction|undefined),
@@ -4049,7 +4049,7 @@ olx.layer.VectorTileOptions.prototype.renderBuffer;
* * `'vector'`: Vector tiles are rendered as vectors. Most accurate rendering * * `'vector'`: Vector tiles are rendered as vectors. Most accurate rendering
* even during animations, but slower performance than the other options. * even during animations, but slower performance than the other options.
* The default is `'hybrid'`. * The default is `'hybrid'`.
* @type {ol.layer.VectorTile.RenderType|string|undefined} * @type {ol.layer.VectorTileRenderType|string|undefined}
* @api * @api
*/ */
olx.layer.VectorTileOptions.prototype.renderMode; olx.layer.VectorTileOptions.prototype.renderMode;
+7 -26
View File
@@ -4,6 +4,7 @@ goog.require('ol');
goog.require('ol.asserts'); goog.require('ol.asserts');
goog.require('ol.layer.TileProperty'); goog.require('ol.layer.TileProperty');
goog.require('ol.layer.Vector'); goog.require('ol.layer.Vector');
goog.require('ol.layer.VectorTileRenderType');
goog.require('ol.obj'); goog.require('ol.obj');
@@ -33,16 +34,16 @@ ol.layer.VectorTile = function(opt_options) {
options.useInterimTilesOnError : true); options.useInterimTilesOnError : true);
ol.asserts.assert(options.renderMode == undefined || ol.asserts.assert(options.renderMode == undefined ||
options.renderMode == ol.layer.VectorTile.RenderType.IMAGE || options.renderMode == ol.layer.VectorTileRenderType.IMAGE ||
options.renderMode == ol.layer.VectorTile.RenderType.HYBRID || options.renderMode == ol.layer.VectorTileRenderType.HYBRID ||
options.renderMode == ol.layer.VectorTile.RenderType.VECTOR, options.renderMode == ol.layer.VectorTileRenderType.VECTOR,
28); // `renderMode` must be `'image'`, `'hybrid'` or `'vector'` 28); // `renderMode` must be `'image'`, `'hybrid'` or `'vector'`
/** /**
* @private * @private
* @type {ol.layer.VectorTile.RenderType|string} * @type {ol.layer.VectorTileRenderType|string}
*/ */
this.renderMode_ = options.renderMode || ol.layer.VectorTile.RenderType.HYBRID; this.renderMode_ = options.renderMode || ol.layer.VectorTileRenderType.HYBRID;
}; };
ol.inherits(ol.layer.VectorTile, ol.layer.Vector); ol.inherits(ol.layer.VectorTile, ol.layer.Vector);
@@ -60,7 +61,7 @@ ol.layer.VectorTile.prototype.getPreload = function() {
/** /**
* @return {ol.layer.VectorTile.RenderType|string} The render mode. * @return {ol.layer.VectorTileRenderType|string} The render mode.
*/ */
ol.layer.VectorTile.prototype.getRenderMode = function() { ol.layer.VectorTile.prototype.getRenderMode = function() {
return this.renderMode_; return this.renderMode_;
@@ -110,23 +111,3 @@ ol.layer.VectorTile.Property_ = {
PRELOAD: 'preload', PRELOAD: 'preload',
USE_INTERIM_TILES_ON_ERROR: 'useInterimTilesOnError' USE_INTERIM_TILES_ON_ERROR: 'useInterimTilesOnError'
}; };
/**
* @enum {string}
* Render mode for vector tiles:
* * `'image'`: Vector tiles are rendered as images. Great performance, but
* point symbols and texts are always rotated with the view and pixels are
* scaled during zoom animations.
* * `'hybrid'`: Polygon and line elements are rendered as images, so pixels
* are scaled during zoom animations. Point symbols and texts are accurately
* rendered as vectors and can stay upright on rotated views.
* * `'vector'`: Vector tiles are rendered as vectors. Most accurate rendering
* even during animations, but slower performance than the other options.
* @api
*/
ol.layer.VectorTile.RenderType = {
IMAGE: 'image',
HYBRID: 'hybrid',
VECTOR: 'vector'
};
+20
View File
@@ -0,0 +1,20 @@
goog.provide('ol.layer.VectorTileRenderType');
/**
* @enum {string}
* Render mode for vector tiles:
* * `'image'`: Vector tiles are rendered as images. Great performance, but
* point symbols and texts are always rotated with the view and pixels are
* scaled during zoom animations.
* * `'hybrid'`: Polygon and line elements are rendered as images, so pixels
* are scaled during zoom animations. Point symbols and texts are accurately
* rendered as vectors and can stay upright on rotated views.
* * `'vector'`: Vector tiles are rendered as vectors. Most accurate rendering
* even during animations, but slower performance than the other options.
* @api
*/
ol.layer.VectorTileRenderType = {
IMAGE: 'image',
HYBRID: 'hybrid',
VECTOR: 'vector'
};
+3 -3
View File
@@ -4,7 +4,7 @@ goog.require('ol');
goog.require('ol.extent'); goog.require('ol.extent');
goog.require('ol.proj'); goog.require('ol.proj');
goog.require('ol.proj.Units'); goog.require('ol.proj.Units');
goog.require('ol.layer.VectorTile'); goog.require('ol.layer.VectorTileRenderType');
goog.require('ol.render.ReplayType'); goog.require('ol.render.ReplayType');
goog.require('ol.render.canvas'); goog.require('ol.render.canvas');
goog.require('ol.render.canvas.ReplayGroup'); goog.require('ol.render.canvas.ReplayGroup');
@@ -44,7 +44,7 @@ ol.renderer.canvas.VectorTileLayer = function(layer) {
// Use lower resolution for pure vector rendering. Closest resolution otherwise. // Use lower resolution for pure vector rendering. Closest resolution otherwise.
this.zDirection = this.zDirection =
layer.getRenderMode() == ol.layer.VectorTile.RenderType.VECTOR ? 1 : 0; layer.getRenderMode() == ol.layer.VectorTileRenderType.VECTOR ? 1 : 0;
}; };
ol.inherits(ol.renderer.canvas.VectorTileLayer, ol.renderer.canvas.TileLayer); ol.inherits(ol.renderer.canvas.VectorTileLayer, ol.renderer.canvas.TileLayer);
@@ -185,7 +185,7 @@ ol.renderer.canvas.VectorTileLayer.prototype.drawTileImage = function(
var vectorTile = /** @type {ol.VectorTile} */ (tile); var vectorTile = /** @type {ol.VectorTile} */ (tile);
this.createReplayGroup_(vectorTile, frameState); this.createReplayGroup_(vectorTile, frameState);
var layer = this.getLayer(); var layer = this.getLayer();
if (layer.getRenderMode() != ol.layer.VectorTile.RenderType.VECTOR) { if (layer.getRenderMode() != ol.layer.VectorTileRenderType.VECTOR) {
this.renderTileImage_(vectorTile, frameState, layerState); this.renderTileImage_(vectorTile, frameState, layerState);
} }
ol.renderer.canvas.TileLayer.prototype.drawTileImage.apply(this, arguments); ol.renderer.canvas.TileLayer.prototype.drawTileImage.apply(this, arguments);