Distinct style function types
This commit is contained in:
@@ -212,12 +212,17 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
|
||||
* @this {ol.renderer.canvas.VectorLayer}
|
||||
*/
|
||||
function(feature) {
|
||||
var styleFunction = feature.getStyleFunction() ||
|
||||
vectorLayer.getStyleFunction();
|
||||
goog.asserts.assert(goog.isDef(styleFunction));
|
||||
var dirty = this.renderFeature(
|
||||
feature, resolution, pixelRatio, styleFunction, replayGroup);
|
||||
this.dirty_ = this.dirty_ || dirty;
|
||||
var styles;
|
||||
if (goog.isDef(feature.getStyleFunction())) {
|
||||
styles = feature.getStyleFunction().call(feature, resolution);
|
||||
} else if (goog.isDef(vectorLayer.getStyleFunction())) {
|
||||
styles = vectorLayer.getStyleFunction()(feature, resolution);
|
||||
}
|
||||
if (goog.isDefAndNotNull(styles)) {
|
||||
var dirty = this.renderFeature(
|
||||
feature, resolution, pixelRatio, styles, replayGroup);
|
||||
this.dirty_ = this.dirty_ || dirty;
|
||||
}
|
||||
};
|
||||
if (!goog.isNull(vectorLayerRenderOrder)) {
|
||||
/** @type {Array.<ol.Feature>} */
|
||||
@@ -249,13 +254,12 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
|
||||
* @param {ol.Feature} feature Feature.
|
||||
* @param {number} resolution Resolution.
|
||||
* @param {number} pixelRatio Pixel ratio.
|
||||
* @param {ol.style.StyleFunction} styleFunction Style function.
|
||||
* @param {Array.<ol.style.Style>} styles Array of styles
|
||||
* @param {ol.render.canvas.ReplayGroup} replayGroup Replay group.
|
||||
* @return {boolean} `true` if an image is loading.
|
||||
*/
|
||||
ol.renderer.canvas.VectorLayer.prototype.renderFeature =
|
||||
function(feature, resolution, pixelRatio, styleFunction, replayGroup) {
|
||||
var styles = styleFunction(feature, resolution);
|
||||
function(feature, resolution, pixelRatio, styles, replayGroup) {
|
||||
if (!goog.isDefAndNotNull(styles)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user