Set api annotation on classdesc, not constructor

This commit is contained in:
ahocevar
2018-07-21 17:25:22 +02:00
parent 2767ddfdc7
commit bbe0a66d07
101 changed files with 484 additions and 382 deletions

View File

@@ -4,6 +4,7 @@
import {UNDEFINED} from './functions.js';
/**
* @classdesc
* Objects that need to clean up after themselves.
*/
class Disposable {

View File

@@ -53,7 +53,6 @@ import Style from './style/Style.js';
* @api
*/
class Feature extends BaseObject {
/**
* @param {module:ol/geom/Geometry|Object.<string, *>=} opt_geometryOrProperties
* You may pass a Geometry object directly, or an object literal containing

View File

@@ -7,6 +7,7 @@ import Spatial from '../filter/Spatial.js';
* @classdesc
* Represents a `<Contains>` operator to test whether a geometry-valued property
* contains a given geometry.
* @api
*/
class Contains extends Spatial {
@@ -15,7 +16,6 @@ class Contains extends Spatial {
* @param {!module:ol/geom/Geometry} geometry Geometry.
* @param {string=} opt_srsName SRS name. No srsName attribute will be
* set on geometries when this is not provided.
* @api
*/
constructor(geometryName, geometry, opt_srsName) {

View File

@@ -6,6 +6,7 @@ import Comparison from '../filter/Comparison.js';
/**
* @classdesc
* Represents a `<During>` comparison operator.
* @api
*/
class During extends Comparison {
@@ -13,7 +14,6 @@ class During extends Comparison {
* @param {!string} propertyName Name of the context property to compare.
* @param {!string} begin The begin date in ISO-8601 format.
* @param {!string} end The end date in ISO-8601 format.
* @api
*/
constructor(propertyName, begin, end) {
super('During', propertyName);

View File

@@ -6,6 +6,7 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsEqualTo>` comparison operator.
* @api
*/
class EqualTo extends ComparisonBinary {
@@ -13,7 +14,6 @@ class EqualTo extends ComparisonBinary {
* @param {!string} propertyName Name of the context property to compare.
* @param {!(string|number)} expression The value to compare.
* @param {boolean=} opt_matchCase Case-sensitive?
* @api
*/
constructor(propertyName, expression, opt_matchCase) {
super('PropertyIsEqualTo', propertyName, expression, opt_matchCase);

View File

@@ -6,13 +6,13 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsGreaterThan>` comparison operator.
* @api
*/
class GreaterThan extends ComparisonBinary {
/**
* @param {!string} propertyName Name of the context property to compare.
* @param {!number} expression The value to compare.
* @api
*/
constructor(propertyName, expression) {
super('PropertyIsGreaterThan', propertyName, expression);

View File

@@ -6,13 +6,13 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsGreaterThanOrEqualTo>` comparison operator.
* @api
*/
class GreaterThanOrEqualTo extends ComparisonBinary {
/**
* @param {!string} propertyName Name of the context property to compare.
* @param {!number} expression The value to compare.
* @api
*/
constructor(propertyName, expression) {
super('PropertyIsGreaterThanOrEqualTo', propertyName, expression);

View File

@@ -7,6 +7,7 @@ import Spatial from '../filter/Spatial.js';
* @classdesc
* Represents a `<Intersects>` operator to test whether a geometry-valued property
* intersects a given geometry.
* @api
*/
class Intersects extends Spatial {

View File

@@ -6,6 +6,7 @@ import Comparison from '../filter/Comparison.js';
/**
* @classdesc
* Represents a `<PropertyIsBetween>` comparison operator.
* @api
*/
class IsBetween extends Comparison {
@@ -13,7 +14,6 @@ class IsBetween extends Comparison {
* @param {!string} propertyName Name of the context property to compare.
* @param {!number} lowerBoundary The lower bound of the range.
* @param {!number} upperBoundary The upper bound of the range.
* @api
*/
constructor(propertyName, lowerBoundary, upperBoundary) {
super('PropertyIsBetween', propertyName);

View File

@@ -6,6 +6,7 @@ import Comparison from '../filter/Comparison.js';
/**
* @classdesc
* Represents a `<PropertyIsLike>` comparison operator.
* @api
*/
class IsLike extends Comparison {
@@ -20,7 +21,6 @@ class IsLike extends Comparison {
* @param {string=} opt_escapeChar Escape character which can be used to escape
* the pattern characters. Default is '!'.
* @param {boolean=} opt_matchCase Case-sensitive?
* @api
*/
constructor(propertyName, pattern, opt_wildCard, opt_singleChar, opt_escapeChar, opt_matchCase) {
super('PropertyIsLike', propertyName);

View File

@@ -6,12 +6,12 @@ import Comparison from '../filter/Comparison.js';
/**
* @classdesc
* Represents a `<PropertyIsNull>` comparison operator.
* @api
*/
class IsNull extends Comparison {
/**
* @param {!string} propertyName Name of the context property to compare.
* @api
*/
constructor(propertyName) {
super('PropertyIsNull', propertyName);

View File

@@ -6,13 +6,13 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsLessThan>` comparison operator.
* @api
*/
class LessThan extends ComparisonBinary {
/**
* @param {!string} propertyName Name of the context property to compare.
* @param {!number} expression The value to compare.
* @api
*/
constructor(propertyName, expression) {
super('PropertyIsLessThan', propertyName, expression);

View File

@@ -6,13 +6,13 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsLessThanOrEqualTo>` comparison operator.
* @api
*/
class LessThanOrEqualTo extends ComparisonBinary {
/**
* @param {!string} propertyName Name of the context property to compare.
* @param {!number} expression The value to compare.
* @api
*/
constructor(propertyName, expression) {
super('PropertyIsLessThanOrEqualTo', propertyName, expression);

View File

@@ -6,12 +6,12 @@ import Filter from '../filter/Filter.js';
/**
* @classdesc
* Represents a logical `<Not>` operator for a filter condition.
* @api
*/
class Not extends Filter {
/**
* @param {!module:ol/format/filter/Filter} condition Filter condition.
* @api
*/
constructor(condition) {

View File

@@ -6,6 +6,7 @@ import ComparisonBinary from '../filter/ComparisonBinary.js';
/**
* @classdesc
* Represents a `<PropertyIsNotEqualTo>` comparison operator.
* @api
*/
class NotEqualTo extends ComparisonBinary {
@@ -13,7 +14,6 @@ class NotEqualTo extends ComparisonBinary {
* @param {!string} propertyName Name of the context property to compare.
* @param {!(string|number)} expression The value to compare.
* @param {boolean=} opt_matchCase Case-sensitive?
* @api
*/
constructor(propertyName, expression, opt_matchCase) {
super('PropertyIsNotEqualTo', propertyName, expression, opt_matchCase);

View File

@@ -6,12 +6,12 @@ import LogicalNary from '../filter/LogicalNary.js';
/**
* @classdesc
* Represents a logical `<Or>` operator between two ore more filter conditions.
* @api
*/
class Or extends LogicalNary {
/**
* @param {...module:ol/format/filter/Filter} conditions Conditions.
* @api
*/
constructor(conditions) {
const params = ['Or'].concat(Array.prototype.slice.call(arguments));

View File

@@ -7,6 +7,7 @@ import Spatial from '../filter/Spatial.js';
* @classdesc
* Represents a `<Within>` operator to test whether a geometry-valued property
* is within a given geometry.
* @api
*/
class Within extends Spatial {
@@ -15,7 +16,6 @@ class Within extends Spatial {
* @param {!module:ol/geom/Geometry} geometry Geometry.
* @param {string=} opt_srsName SRS name. No srsName attribute will be
* set on geometries when this is not provided.
* @api
*/
constructor(geometryName, geometry, opt_srsName) {
super('Within', geometryName, geometry, opt_srsName);

View File

@@ -15,12 +15,12 @@ import Interaction, {zoomByDelta} from '../interaction/Interaction.js';
/**
* @classdesc
* Allows the user to zoom by double-clicking on the map.
* @api
*/
class DoubleClickZoom extends Interaction {
/**
* @param {module:ol/interaction/DoubleClickZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
super({

View File

@@ -83,13 +83,13 @@ class DragAndDropEvent extends Event {
/**
* @classdesc
* Handles input of vector data by drag and drop.
* @api
*
* @fires module:ol/interaction/DragAndDrop~DragAndDropEvent
*/
class DragAndDrop extends Interaction {
/**
* @param {module:ol/interaction/DragAndDrop~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -107,11 +107,11 @@ class DragBoxEvent extends Event {
* This interaction is only supported for mouse devices.
*
* @fires module:ol/interaction/DragBox~DragBoxEvent
* @api
*/
class DragBox extends PointerInteraction {
/**
* @param {module:ol/interaction/DragBox~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -21,11 +21,11 @@ import PointerInteraction, {centroid as centroidFromPointers} from '../interacti
/**
* @classdesc
* Allows the user to pan the map by dragging the map.
* @api
*/
class DragPan extends PointerInteraction {
/**
* @param {module:ol/interaction/DragPan~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -26,12 +26,12 @@ import PointerInteraction from '../interaction/Pointer.js';
* it to when the alt and shift keys are held down.
*
* This interaction is only supported for mouse devices.
* @api
*/
class DragRotate extends PointerInteraction {
/**
* @param {module:ol/interaction/DragRotate~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -27,12 +27,12 @@ import PointerInteraction from '../interaction/Pointer.js';
* This interaction is only supported for mouse devices.
*
* And this interaction is not included in the default interactions.
* @api
*/
class DragRotateAndZoom extends PointerInteraction {
/**
* @param {module:ol/interaction/DragRotateAndZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -28,11 +28,11 @@ import DragBox from '../interaction/DragBox.js';
*
* To change the style of the box, use CSS and the `.ol-dragzoom` selector, or
* your custom one configured with `className`.
* @api
*/
class DragZoom extends DragBox {
/**
* @param {module:ol/interaction/DragZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
const options = opt_options ? opt_options : {};

View File

@@ -154,11 +154,11 @@ class DrawEvent extends Event {
* Interaction for drawing feature geometries.
*
* @fires module:ol/interaction/Draw~DrawEvent
* @api
*/
class Draw extends PointerInteraction {
/**
* @param {module:ol/interaction/Draw~Options} options Options.
* @api
*/
constructor(options) {

View File

@@ -77,11 +77,11 @@ class ExtentInteractionEvent extends Event {
* This interaction is only supported for mouse devices.
*
* @fires module:ol/interaction/Extent~Event
* @api
*/
class ExtentInteraction extends PointerInteraction {
/**
* @param {module:ol/interaction/Extent~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -29,11 +29,11 @@ import {clamp} from '../math.js';
* by a keyboard event not a button element event.
* Although interactions do not have a DOM element, some of them do render
* vectors and so are visible on the screen.
* @api
*/
class Interaction extends BaseObject {
/**
* @param {module:ol/interaction/Interaction~InteractionOptions} options Options.
* @api
*/
constructor(options) {
super();

View File

@@ -32,11 +32,11 @@ import Interaction, {pan} from '../interaction/Interaction.js';
* element, focus will have to be on, and returned to, this element if the keys
* are to function.
* See also {@link module:ol/interaction/KeyboardZoom~KeyboardZoom}.
* @api
*/
class KeyboardPan extends Interaction {
/**
* @param {module:ol/interaction/KeyboardPan~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -28,11 +28,11 @@ import Interaction, {zoomByDelta} from '../interaction/Interaction.js';
* element, focus will have to be on, and returned to, this element if the keys
* are to function.
* See also {@link moudle:ol/interaction/KeyboardPan~KeyboardPan}.
* @api
*/
class KeyboardZoom extends Interaction {
/**
* @param {module:ol/interaction/KeyboardZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -149,11 +149,11 @@ export class ModifyEvent extends Event {
* key is pressed. To configure the interaction with a different condition
* for deletion, use the `deleteCondition` option.
* @fires module:ol/interaction/Modify~ModifyEvent
* @api
*/
class Modify extends PointerInteraction {
/**
* @param {module:ol/interaction/Modify~Options} options Options.
* @api
*/
constructor(options) {

View File

@@ -46,11 +46,11 @@ export const Mode = {
/**
* @classdesc
* Allows the user to zoom the map by scrolling the mouse wheel.
* @api
*/
class MouseWheelZoom extends Interaction {
/**
* @param {module:ol/interaction/MouseWheelZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -20,11 +20,11 @@ import {disable} from '../rotationconstraint.js';
* @classdesc
* Allows the user to rotate the map by twisting with two fingers
* on a touch screen.
* @api
*/
class PinchRotate extends PointerInteraction {
/**
* @param {module:ol/interaction/PinchRotate~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -19,11 +19,11 @@ import PointerInteraction, {centroid as centroidFromPointers} from '../interacti
* @classdesc
* Allows the user to zoom the map by pinching with two fingers
* on a touch screen.
* @api
*/
class PinchZoom extends PointerInteraction {
/**
* @param {module:ol/interaction/PinchZoom~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -73,11 +73,11 @@ const handleMoveEvent = UNDEFINED;
* started. During a drag sequence the `handleDragEvent` user function is
* called on `move` events. The drag sequence ends when the `handleUpEvent`
* user function is called and returns `false`.
* @api
*/
class PointerInteraction extends Interaction {
/**
* @param {module:ol/interaction/Pointer~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -152,11 +152,11 @@ class SelectEvent extends Event {
* Selected features are added to an internal unmanaged layer.
*
* @fires SelectEvent
* @api
*/
class Select extends Interaction {
/**
* @param {module:ol/interaction/Select~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -62,11 +62,12 @@ import RBush from '../structs/RBush.js';
* var snap = new Snap({
* source: source
* });
*
* @api
*/
class Snap extends PointerInteraction {
/**
* @param {module:ol/interaction/Snap~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -91,11 +91,11 @@ export class TranslateEvent extends Event {
* Interaction for translating (moving) features.
*
* @fires module:ol/interaction/Translate~TranslateEvent
* @api
*/
class Translate extends PointerInteraction {
/**
* @param {module:ol/interaction/Translate~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
super({

View File

@@ -22,17 +22,19 @@ import {assign} from '../obj.js';
*/
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Note that with {@link module:ol/layer/Base} and all its subclasses, any property set in
* the options is set as a {@link module:ol/Object} property on the layer object, so
* is observable, and has get/set accessors.
*
* @api
*/
class BaseLayer extends BaseObject {
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Note that with {@link module:ol/layer/Base} and all its subclasses, any property set in
* the options is set as a {@link module:ol/Object} property on the layer object, so
* is observable, and has get/set accessors.
*
* @param {module:ol/layer/Base~Options} options Layer options.
* @api
*/
constructor(options) {

View File

@@ -40,15 +40,17 @@ const Property = {
};
/**
* @classdesc
* A {@link module:ol/Collection~Collection} of layers that are handled together.
*
* A generic `change` event is triggered when the group/Collection changes.
*
* @api
*/
class LayerGroup extends BaseLayer {
/**
* @classdesc
* A {@link module:ol/Collection~Collection} of layers that are handled together.
*
* A generic `change` event is triggered when the group/Collection changes.
*
* @param {module:ol/layer/Group~Options=} opt_options Layer options.
* @api
*/
constructor(opt_options) {

View File

@@ -59,17 +59,19 @@ const Property = {
const DEFAULT_GRADIENT = ['#00f', '#0ff', '#0f0', '#ff0', '#f00'];
/**
* @classdesc
* Layer for rendering vector data as a heatmap.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @fires module:ol/render/Event~RenderEvent
* @api
*/
class Heatmap extends VectorLayer {
/**
* @classdesc
* Layer for rendering vector data as a heatmap.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @fires module:ol/render/Event~RenderEvent
* @param {module:ol/layer/Heatmap~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
const options = opt_options ? opt_options : {};

View File

@@ -25,19 +25,21 @@ import Layer from '../layer/Layer.js';
*/
/**
* @classdesc
* Server-rendered images that are available for arbitrary extents and
* resolutions.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @fires module:ol/render/Event~RenderEvent
* @api
*/
class ImageLayer extends Layer {
/**
* @classdesc
* Server-rendered images that are available for arbitrary extents and
* resolutions.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @fires module:ol/render/Event~RenderEvent
* @param {module:ol/layer/Image~Options=} opt_options Layer options.
* @api
*/
constructor(opt_options) {
const options = opt_options ? opt_options : {};

View File

@@ -43,26 +43,26 @@ import SourceState from '../source/State.js';
* @property {number} minResolution
*/
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* A visual representation of raster or vector map data.
* Layers group together those properties that pertain to how the data is to be
* displayed, irrespective of the source of that data.
*
* Layers are usually added to a map with {@link module:ol/Map#addLayer}. Components
* like {@link module:ol/interaction/Select~Select} use unmanaged layers
* internally. These unmanaged layers are associated with the map using
* {@link module:ol/layer/Layer~Layer#setMap} instead.
*
* A generic `change` event is fired when the state of the source changes.
*
* @fires module:ol/render/Event~RenderEvent
*/
class Layer extends BaseLayer {
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* A visual representation of raster or vector map data.
* Layers group together those properties that pertain to how the data is to be
* displayed, irrespective of the source of that data.
*
* Layers are usually added to a map with {@link module:ol/Map#addLayer}. Components
* like {@link module:ol/interaction/Select~Select} use unmanaged layers
* internally. These unmanaged layers are associated with the map using
* {@link module:ol/layer/Layer~Layer#setMap} instead.
*
* A generic `change` event is fired when the state of the source changes.
*
* @fires module:ol/render/Event~RenderEvent
* @param {module:ol/layer/Layer~Options} options Layer options.
* @api
*/
constructor(options) {

View File

@@ -29,18 +29,19 @@ import {assign} from '../obj.js';
* @property {boolean} [useInterimTilesOnError=true] Use interim tiles on error.
*/
/**
* @classdesc
* For layer sources that provide pre-rendered, tiled images in grids that are
* organized by zoom levels for specific resolutions.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @api
*/
class TileLayer extends Layer {
/**
* @classdesc
* For layer sources that provide pre-rendered, tiled images in grids that are
* organized by zoom levels for specific resolutions.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @param {module:ol/layer/Tile~Options=} opt_options Tile layer options.
* @api
*/
constructor(opt_options) {
const options = opt_options ? opt_options : {};

View File

@@ -77,16 +77,18 @@ const Property = {
};
/**
* @classdesc
* Vector data that is rendered client-side.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @api
*/
class VectorLayer extends Layer {
/**
* @classdesc
* Vector data that is rendered client-side.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @param {module:ol/layer/Vector~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
const options = opt_options ?

View File

@@ -86,16 +86,19 @@ export const RenderType = {
*/
/**
* @classdesc
* Layer for vector tile data that is rendered client-side.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @param {module:ol/layer/VectorTile~Options=} opt_options Options.
* @api
*/
class VectorTileLayer extends VectorLayer {
/**
* @classdesc
* Layer for vector tile data that is rendered client-side.
* Note that any property set in the options is set as a {@link module:ol/Object~BaseObject}
* property on the layer object; for example, setting `title: 'My Title'` in the
* options means that `title` is observable, and has get/set accessors.
*
* @param {module:ol/layer/VectorTile~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
const options = opt_options ? opt_options : {};

View File

@@ -3,6 +3,7 @@
*/
/**
* @classdesc
* Context for drawing geometries. A vector context is available on render
* events and does not need to be constructed directly.
* @api

View File

@@ -16,16 +16,17 @@ import VectorContext from '../VectorContext.js';
import {defaultTextAlign, defaultFillStyle, defaultLineCap, defaultLineDash, defaultLineDashOffset, defaultLineJoin, defaultLineWidth, defaultMiterLimit, defaultStrokeStyle, defaultTextBaseline, defaultFont} from '../canvas.js';
import {create as createTransform, compose as composeTransform} from '../../transform.js';
/**
* @classdesc
* A concrete subclass of {@link module:ol/render/VectorContext} that implements
* direct rendering of features and geometries to an HTML5 Canvas context.
* Instances of this class are created internally by the library and
* provided to application code as vectorContext member of the
* {@link module:ol/render/Event~RenderEvent} object associated with postcompose, precompose and
* render events emitted by layers and maps.
*/
class CanvasImmediateRenderer extends VectorContext {
/**
* @classdesc
* A concrete subclass of {@link module:ol/render/VectorContext} that implements
* direct rendering of features and geometries to an HTML5 Canvas context.
* Instances of this class are created internally by the library and
* provided to application code as vectorContext member of the
* {@link module:ol/render/Event~RenderEvent} object associated with postcompose, precompose and
* render events emitted by layers and maps.
*
* @param {CanvasRenderingContext2D} context Context.
* @param {number} pixelRatio Pixel ratio.
* @param {module:ol/extent~Extent} extent Extent.

View File

@@ -13,11 +13,15 @@ import {layerRendererConstructors} from './Map.js';
import IntermediateCanvasRenderer from './IntermediateCanvas.js';
import {create as createTransform, compose as composeTransform} from '../../transform.js';
/**
* @classdesc
* Canvas renderer for image layers.
* @api
*/
class CanvasImageLayerRenderer extends IntermediateCanvasRenderer {
/**
* @param {module:ol/layer/Image|module:ol/layer/Vector} imageLayer Image or vector layer.
* @api
*/
constructor(imageLayer) {

View File

@@ -19,12 +19,15 @@ import SourceState from '../../source/State.js';
*/
export const layerRendererConstructors = [];
/**
* @classdesc
* Canvas map renderer.
* @api
*/
class CanvasMapRenderer extends MapRenderer {
/**
* @param {module:ol/PluggableMap} map Map.
* @api
*/
constructor(map) {
super(map);

View File

@@ -11,12 +11,16 @@ import {containsExtent, createEmpty, equals, getIntersection, isEmpty} from '../
import IntermediateCanvasRenderer from '../canvas/IntermediateCanvas.js';
import {create as createTransform, compose as composeTransform} from '../../transform.js';
/**
* @classdesc
* Canvas renderer for tile layers.
* @api
*/
class CanvasTileLayerRenderer extends IntermediateCanvasRenderer {
/**
* @param {module:ol/layer/Tile|module:ol/layer/VectorTile} tileLayer Tile layer.
* @param {boolean=} opt_noContext Skip the context creation.
* @api
*/
constructor(tileLayer, opt_noContext) {

View File

@@ -15,11 +15,15 @@ import CanvasReplayGroup from '../../render/canvas/ReplayGroup.js';
import CanvasLayerRenderer from '../canvas/Layer.js';
import {defaultOrder as defaultRenderOrder, getTolerance as getRenderTolerance, getSquaredTolerance as getSquaredRenderTolerance, renderFeature} from '../vector.js';
/**
* @classdesc
* Canvas renderer for vector layers.
* @api
*/
class CanvasVectorLayerRenderer extends CanvasLayerRenderer {
/**
* @param {module:ol/layer/Vector} vectorLayer Vector layer.
* @api
*/
constructor(vectorLayer) {

View File

@@ -47,11 +47,15 @@ const VECTOR_REPLAYS = {
};
/**
* @classdesc
* Canvas renderer for vector tile layers.
* @api
*/
class CanvasVectorTileLayerRenderer extends CanvasTileLayerRenderer {
/**
* @param {module:ol/layer/VectorTile} layer VectorTile layer.
* @api
*/
constructor(layer) {

View File

@@ -21,12 +21,16 @@ import {
import {CLAMP_TO_EDGE} from '../../webgl.js';
import {createTexture} from '../../webgl/Context.js';
/**
* @classdesc
* WebGL renderer for image layers.
* @api
*/
class WebGLImageLayerRenderer extends WebGLLayerRenderer {
/**
* @param {module:ol/renderer/webgl/Map} mapRenderer Map renderer.
* @param {module:ol/layer/Image} imageLayer Tile layer.
* @api
*/
constructor(mapRenderer, imageLayer) {

View File

@@ -37,11 +37,15 @@ import ContextEventType from '../../webgl/ContextEventType.js';
const WEBGL_TEXTURE_CACHE_HIGH_WATER_MARK = 1024;
/**
* @classdesc
* WebGL map renderer.
* @api
*/
class WebGLMapRenderer extends MapRenderer {
/**
* @param {module:ol/PluggableMap} map Map.
* @api
*/
constructor(map) {
super(map);

View File

@@ -24,12 +24,16 @@ import {
import {COLOR_BUFFER_BIT, BLEND, ARRAY_BUFFER, FLOAT, LINEAR, TRIANGLE_STRIP} from '../../webgl.js';
import WebGLBuffer from '../../webgl/Buffer.js';
/**
* @classdesc
* WebGL renderer for tile layers.
* @api
*/
class WebGLTileLayerRenderer extends WebGLLayerRenderer {
/**
* @param {module:ol/renderer/webgl/Map} mapRenderer Map renderer.
* @param {module:ol/layer/Tile} tileLayer Tile layer.
* @api
*/
constructor(mapRenderer, tileLayer) {

View File

@@ -10,12 +10,17 @@ import {defaultOrder as defaultRenderOrder, getTolerance as getRenderTolerance,
import WebGLLayerRenderer from '../webgl/Layer.js';
import {apply as applyTransform} from '../../transform.js';
/**
* @classdesc
* WebGL renderer for vector layers.
* @api
*/
class WebGLVectorLayerRenderer extends WebGLLayerRenderer {
/**
* @param {module:ol/renderer/webgl/Map} mapRenderer Map renderer.
* @param {module:ol/layer/Vector} vectorLayer Vector layer.
* @api
*/
constructor(mapRenderer, vectorLayer) {

View File

@@ -17,12 +17,13 @@ import Triangulation from '../reproj/Triangulation.js';
*/
/**
* @classdesc
* Class encapsulating single reprojected image.
* See {@link module:ol/source/Image~ImageSource}.
*/
class ReprojImage extends ImageBase {
/**
* @classdesc
* Class encapsulating single reprojected image.
* See {@link module:ol/source/Image~ImageSource}.
*
* @param {module:ol/proj/Projection} sourceProj Source projection (of the data).
* @param {module:ol/proj/Projection} targetProj Target projection.
* @param {module:ol/extent~Extent} targetExtent Target extent.

View File

@@ -18,12 +18,14 @@ import Triangulation from '../reproj/Triangulation.js';
*/
/**
* @classdesc
* Class encapsulating single reprojected tile.
* See {@link module:ol/source/TileImage~TileImage}.
*
*/
class ReprojTile extends Tile {
/**
* @classdesc
* Class encapsulating single reprojected tile.
* See {@link module:ol/source/TileImage~TileImage}.
*
* @param {module:ol/proj/Projection} sourceProj Source projection.
* @param {module:ol/tilegrid/TileGrid} sourceTileGrid Source tile grid.
* @param {module:ol/proj/Projection} targetProj Target projection.

View File

@@ -44,13 +44,15 @@ const TOS_ATTRIBUTION = '<a class="ol-attribution-bing-tos" ' +
* To disable the opacity transition, pass `transition: 0`.
*/
/**
* @classdesc
* Layer source for Bing Maps tile data.
* @api
*/
class BingMaps extends TileImage {
/**
* @classdesc
* Layer source for Bing Maps tile data.
*
* @param {module:ol/source/BingMaps~Options=} options Bing Maps options.
* @api
*/
constructor(options) {

View File

@@ -31,13 +31,14 @@ import XYZ from '../source/XYZ.js';
*/
/**
* @classdesc
* Layer source for the CartoDB Maps API.
* @api
*/
class CartoDB extends XYZ {
/**
* @classdesc
* Layer source for the CartoDB Maps API.
*
* @param {module:ol/source/CartoDB~Options=} options CartoDB options.
* @api
*/
constructor(options) {
super({

View File

@@ -36,15 +36,16 @@ import VectorSource from '../source/Vector.js';
*/
/**
* @classdesc
* Layer source to cluster vector data. Works out of the box with point
* geometries. For other geometry types, or if not all geometries should be
* considered for clustering, a custom `geometryFunction` can be defined.
* @api
*/
class Cluster extends VectorSource {
/**
* @classdesc
* Layer source to cluster vector data. Works out of the box with point
* geometries. For other geometry types, or if not all geometries should be
* considered for clustering, a custom `geometryFunction` can be defined.
*
* @param {module:ol/source/Cluster~Options=} options Cluster options.
* @api
*/
constructor(options) {
super({

View File

@@ -41,13 +41,13 @@ const ImageSourceEventType = {
};
/**
* @classdesc
* Events emitted by {@link module:ol/source/Image~ImageSource} instances are instances of this
* type.
*/
class ImageSourceEvent extends Event {
/**
* @classdesc
* Events emitted by {@link module:ol/source/Image~ImageSource} instances are instances of this
* type.
*
* @param {string} type Type.
* @param {module:ol/Image} image The image.
*/
@@ -77,15 +77,16 @@ class ImageSourceEvent extends Event {
*/
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for sources providing a single image.
* @api
*/
class ImageSource extends Source {
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for sources providing a single image.
*
* @param {module:ol/source/Image~Options} options Single image source options.
* @api
*/
constructor(options) {
super({

View File

@@ -39,19 +39,21 @@ import {appendParams} from '../uri.js';
*/
/**
* @classdesc
* Source for data from ArcGIS Rest services providing single, untiled images.
* Useful when underlying map service has labels.
*
* If underlying map service is not using labels,
* take advantage of ol image caching and use
* {@link module:ol/source/TileArcGISRest} data source.
*
* @fires ol/source/Image~ImageSourceEvent
* @api
*/
class ImageArcGISRest extends ImageSource {
/**
* @classdesc
* Source for data from ArcGIS Rest services providing single, untiled images.
* Useful when underlying map service has labels.
*
* If underlying map service is not using labels,
* take advantage of ol image caching and use
* {@link module:ol/source/TileArcGISRest} data source.
*
* @fires ol/source/Image~ImageSourceEvent
* @param {module:ol/source/ImageArcGISRest~Options=} opt_options Image ArcGIS Rest Options.
* @api
*/
constructor(opt_options) {

View File

@@ -42,13 +42,14 @@ import ImageSource from '../source/Image.js';
*/
/**
* @classdesc
* Base class for image sources where a canvas element is the image.
* @api
*/
class ImageCanvasSource extends ImageSource {
/**
* @classdesc
* Base class for image sources where a canvas element is the image.
*
* @param {module:ol/source/ImageCanvas~Options=} options ImageCanvas options.
* @api
*/
constructor(options) {

View File

@@ -32,14 +32,16 @@ import {appendParams} from '../uri.js';
*/
/**
* @classdesc
* Source for images from Mapguide servers
*
* @fires ol/source/Image~ImageSourceEvent
* @api
*/
class ImageMapGuide extends ImageSource {
/**
* @classdesc
* Source for images from Mapguide servers
*
* @fires ol/source/Image~ImageSourceEvent
* @param {module:ol/source/ImageMapGuide~Options=} options ImageMapGuide options.
* @api
*/
constructor(options) {

View File

@@ -28,13 +28,14 @@ import ImageSource, {defaultImageLoadFunction} from '../source/Image.js';
*/
/**
* @classdesc
* A layer source for displaying a single, static image.
* @api
*/
class Static extends ImageSource {
/**
* @classdesc
* A layer source for displaying a single, static image.
*
* @param {module:ol/source/ImageStatic~Options=} options ImageStatic options.
* @api
*/
constructor(options) {
const imageExtent = options.imageExtent;

View File

@@ -51,14 +51,16 @@ const GETFEATUREINFO_IMAGE_SIZE = [101, 101];
*/
/**
* @classdesc
* Source for WMS servers providing single, untiled images.
*
* @fires ol/source/Image~ImageSourceEvent
* @api
*/
class ImageWMS extends ImageSource {
/**
* @classdesc
* Source for WMS servers providing single, untiled images.
*
* @fires ol/source/Image~ImageSourceEvent
* @param {module:ol/source/ImageWMS~Options=} [opt_options] ImageWMS options.
* @api
*/
constructor(opt_options) {

View File

@@ -41,14 +41,14 @@ export const ATTRIBUTION = '&copy; ' +
*/
/**
* @classdesc
* Layer source for the OpenStreetMap tile server.
* @api
*/
class OSM extends XYZ {
/**
* @classdesc
* Layer source for the OpenStreetMap tile server.
*
* @param {module:ol/source/OSM~Options=} [opt_options] Open Street Map options.
* @api
*/
constructor(opt_options) {

View File

@@ -72,13 +72,13 @@ const RasterOperationType = {
};
/**
* @classdesc
* Events emitted by {@link module:ol/source/Raster} instances are instances of this
* type.
*/
class RasterSourceEvent extends Event {
/**
* @classdesc
* Events emitted by {@link module:ol/source/Raster} instances are instances of this
* type.
*
* @param {string} type Type.
* @param {module:ol/PluggableMap~FrameState} frameState The frame state.
* @param {Object} data An object made available to operations.
@@ -133,16 +133,18 @@ class RasterSourceEvent extends Event {
*/
/**
* @classdesc
* A source that transforms data from any number of input sources using an
* {@link module:ol/source/Raster~Operation} function to transform input pixel values into
* output pixel values.
*
* @fires ol/source/Raster~RasterSourceEvent
* @api
*/
class RasterSource extends ImageSource {
/**
* @classdesc
* A source that transforms data from any number of input sources using an
* {@link module:ol/source/Raster~Operation} function to transform input pixel values into
* output pixel values.
*
* @fires ol/source/Raster~RasterSourceEvent
* @param {module:ol/source/Raster~Options=} options Options.
* @api
*/
constructor(options) {
super({});

View File

@@ -37,17 +37,18 @@ import SourceState from '../source/State.js';
*/
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for {@link module:ol/layer/Layer~Layer} sources.
*
* A generic `change` event is triggered when the state of the source changes.
* @api
*/
class Source extends BaseObject {
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for {@link module:ol/layer/Layer~Layer} sources.
*
* A generic `change` event is triggered when the state of the source changes.
*
* @param {module:ol/source/Source~Options} options Source options.
* @api
*/
constructor(options) {

View File

@@ -109,14 +109,14 @@ const ProviderConfig = {
*/
/**
* @classdesc
* Layer source for the Stamen tile server.
* @api
*/
class Stamen extends XYZ {
/**
* @classdesc
* Layer source for the Stamen tile server.
*
* @param {module:ol/source/Stamen~Options=} options Stamen options.
* @api
*/
constructor(options) {
const i = options.layer.indexOf('-');

View File

@@ -27,15 +27,16 @@ import {wrapX, getForProjection as getTileGridForProjection} from '../tilegrid.j
*/
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for sources providing images divided into a tile grid.
* @api
*/
class TileSource extends Source {
/**
* @classdesc
* Abstract base class; normally only used for creating subclasses and not
* instantiated in apps.
* Base class for sources providing images divided into a tile grid.
*
* @param {module:ol/source/Tile~Options=} options SourceTile source options.
* @api
*/
constructor(options) {
@@ -307,12 +308,12 @@ TileSource.prototype.useTile = UNDEFINED;
* @classdesc
* Events emitted by {@link module:ol/source/Tile~TileSource} instances are instances of this
* type.
*
* @param {string} type Type.
* @param {module:ol/Tile} tile The tile.
*/
export class TileSourceEvent extends Event {
/**
* @param {string} type Type.
* @param {module:ol/Tile} tile The tile.
*/
constructor(type, tile) {
super(type);

View File

@@ -51,17 +51,18 @@ import {appendParams} from '../uri.js';
*/
/**
* @classdesc
* Layer source for tile data from ArcGIS Rest services. Map and Image
* Services are supported.
*
* For cached ArcGIS services, better performance is available using the
* {@link module:ol/source/XYZ~XYZ} data source.
* @api
*/
class TileArcGISRest extends TileImage {
/**
* @classdesc
* Layer source for tile data from ArcGIS Rest services. Map and Image
* Services are supported.
*
* For cached ArcGIS services, better performance is available using the
* {@link module:ol/source/XYZ~XYZ} data source.
*
* @param {module:ol/source/TileArcGISRest~Options=} opt_options Tile ArcGIS Rest options.
* @api
*/
constructor(opt_options) {

View File

@@ -80,17 +80,18 @@ class LabeledTile extends Tile {
*/
/**
* @classdesc
* A pseudo tile source, which does not fetch tiles from a server, but renders
* a grid outline for the tile grid/projection along with the coordinates for
* each tile. See examples/canvas-tiles for an example.
*
* Uses Canvas context2d, so requires Canvas support.
* @api
*/
class TileDebug extends TileSource {
/**
* @classdesc
* A pseudo tile source, which does not fetch tiles from a server, but renders
* a grid outline for the tile grid/projection along with the coordinates for
* each tile. See examples/canvas-tiles for an example.
*
* Uses Canvas context2d, so requires Canvas support.
*
* @param {module:ol/source/TileDebug~Options=} options Debug tile options.
* @api
*/
constructor(options) {

View File

@@ -54,14 +54,16 @@ import {getForProjection as getTileGridForProjection} from '../tilegrid.js';
*/
/**
* @classdesc
* Base class for sources providing images divided into a tile grid.
*
* @fires module:ol/source/Tile~TileSourceEvent
* @api
*/
class TileImage extends UrlTile {
/**
* @classdesc
* Base class for sources providing images divided into a tile grid.
*
* @fires module:ol/source/Tile~TileSourceEvent
* @param {module:ol/source/TileImage~Options=} options Image tile options.
* @api
*/
constructor(options) {

View File

@@ -44,13 +44,14 @@ import {createXYZ, extentFromProjection} from '../tilegrid.js';
*/
/**
* @classdesc
* Layer source for tile data in TileJSON format.
* @api
*/
class TileJSON extends TileImage {
/**
* @classdesc
* Layer source for tile data in TileJSON format.
*
* @param {module:ol/source/TileJSON~Options=} options TileJSON options.
* @api
*/
constructor(options) {
super({

View File

@@ -71,13 +71,14 @@ import {appendParams} from '../uri.js';
*/
/**
* @classdesc
* Layer source for tile data from WMS servers.
* @api
*/
class TileWMS extends TileImage {
/**
* @classdesc
* Layer source for tile data from WMS servers.
*
* @param {module:ol/source/TileWMS~Options=} [opt_options] Tile WMS options.
* @api
*/
constructor(opt_options) {

View File

@@ -17,16 +17,16 @@ import {getKeyZXY} from '../tilecoord.js';
import {createXYZ, extentFromProjection} from '../tilegrid.js';
/**
* @param {module:ol/tilecoord~TileCoord} tileCoord Tile coordinate.
* @param {module:ol/TileState} state State.
* @param {string} src Image source URI.
* @param {module:ol/extent~Extent} extent Extent of the tile.
* @param {boolean} preemptive Load the tile when visible (before it's needed).
* @param {boolean} jsonp Load the tile as a script.
*/
export class CustomTile extends Tile {
/**
* @param {module:ol/tilecoord~TileCoord} tileCoord Tile coordinate.
* @param {module:ol/TileState} state State.
* @param {string} src Image source URI.
* @param {module:ol/extent~Extent} extent Extent of the tile.
* @param {boolean} preemptive Load the tile when visible (before it's needed).
* @param {boolean} jsonp Load the tile as a script.
*/
constructor(tileCoord, state, src, extent, preemptive, jsonp) {
super(tileCoord, state);
@@ -267,14 +267,14 @@ CustomTile.prototype.load = function() {
*/
/**
* @classdesc
* Layer source for UTFGrid interaction data loaded from TileJSON format.
* @api
*/
class UTFGrid extends TileSource {
/**
* @classdesc
* Layer source for UTFGrid interaction data loaded from TileJSON format.
*
* @param {module:ol/source/UTFGrid~Options=} options Source options.
* @api
*/
constructor(options) {
super({

View File

@@ -27,12 +27,14 @@ import {getKeyZXY} from '../tilecoord.js';
*/
/**
* @classdesc
* Base class for sources providing tiles divided into a tile grid over http.
*
* @fires module:ol/source/TileEvent
*/
class UrlTile extends TileSource {
/**
* @classdesc
* Base class for sources providing tiles divided into a tile grid over http.
*
* @fires module:ol/source/TileEvent
* @param {module:ol/source/UrlTile~Options=} options Image tile options.
*/
constructor(options) {

View File

@@ -35,12 +35,13 @@ import RBush from '../structs/RBush.js';
* @classdesc
* Events emitted by {@link module:ol/source/Vector} instances are instances of this
* type.
*
* @param {string} type Type.
* @param {module:ol/Feature=} opt_feature Feature.
*/
export class VectorSourceEvent extends Event {
/**
* @param {string} type Type.
* @param {module:ol/Feature=} opt_feature Feature.
*/
constructor(type, opt_feature) {
super(type);
@@ -147,17 +148,18 @@ export class VectorSourceEvent extends Event {
*/
/**
* @classdesc
* Provides a source of features for vector layers. Vector features provided
* by this source are suitable for editing. See {@link module:ol/source/VectorTile~VectorTile} for
* vector data that is optimized for rendering.
*
* @fires ol/source/Vector~VectorSourceEvent
* @api
*/
class VectorSource extends Source {
/**
* @classdesc
* Provides a source of features for vector layers. Vector features provided
* by this source are suitable for editing. See {@link module:ol/source/VectorTile~VectorTile} for
* vector data that is optimized for rendering.
*
* @fires ol/source/Vector~VectorSourceEvent
* @param {module:ol/source/Vector~Options=} opt_options Vector source options.
* @api
*/
constructor(opt_options) {

View File

@@ -58,21 +58,22 @@ import {createXYZ, extentFromProjection, createForProjection} from '../tilegrid.
*/
/**
* @classdesc
* Class for layer sources providing vector data divided into a tile grid, to be
* used with {@link module:ol/layer/VectorTile~VectorTile}. Although this source receives tiles
* with vector features from the server, it is not meant for feature editing.
* Features are optimized for rendering, their geometries are clipped at or near
* tile boundaries and simplified for a view resolution. See
* {@link module:ol/source/Vector} for vector sources that are suitable for feature
* editing.
*
* @fires module:ol/source/Tile~TileSourceEvent
* @api
*/
class VectorTile extends UrlTile {
/**
* @classdesc
* Class for layer sources providing vector data divided into a tile grid, to be
* used with {@link module:ol/layer/VectorTile~VectorTile}. Although this source receives tiles
* with vector features from the server, it is not meant for feature editing.
* Features are optimized for rendering, their geometries are clipped at or near
* tile boundaries and simplified for a view resolution. See
* {@link module:ol/source/Vector} for vector sources that are suitable for feature
* editing.
*
* @fires module:ol/source/Tile~TileSourceEvent
* @param {module:ol/source/VectorTile~Options=} options Vector tile options.
* @api
*/
constructor(options) {
const projection = options.projection || 'EPSG:3857';

View File

@@ -56,14 +56,14 @@ import {appendParams} from '../uri.js';
*/
/**
* @classdesc
* Layer source for tile data from WMTS servers.
* @api
*/
class WMTS extends TileImage {
/**
* @classdesc
* Layer source for tile data from WMTS servers.
*
* @param {module:ol/source/WMTS~Options=} options WMTS options.
* @api
*/
constructor(options) {

View File

@@ -44,27 +44,27 @@ import {createXYZ, extentFromProjection} from '../tilegrid.js';
*/
/**
* @classdesc
* Layer source for tile data with URLs in a set XYZ format that are
* defined in a URL template. By default, this follows the widely-used
* Google grid where `x` 0 and `y` 0 are in the top left. Grids like
* TMS where `x` 0 and `y` 0 are in the bottom left can be used by
* using the `{-y}` placeholder in the URL template, so long as the
* source does not have a custom tile grid. In this case,
* {@link module:ol/source/TileImage} can be used with a `tileUrlFunction`
* such as:
*
* tileUrlFunction: function(coordinate) {
* return 'http://mapserver.com/' + coordinate[0] + '/' +
* coordinate[1] + '/' + coordinate[2] + '.png';
* }
*
* @api
*/
class XYZ extends TileImage {
/**
* @classdesc
* Layer source for tile data with URLs in a set XYZ format that are
* defined in a URL template. By default, this follows the widely-used
* Google grid where `x` 0 and `y` 0 are in the top left. Grids like
* TMS where `x` 0 and `y` 0 are in the bottom left can be used by
* using the `{-y}` placeholder in the URL template, so long as the
* source does not have a custom tile grid. In this case,
* {@link module:ol/source/TileImage} can be used with a `tileUrlFunction`
* such as:
*
* tileUrlFunction: function(coordinate) {
* return 'http://mapserver.com/' + coordinate[0] + '/' +
* coordinate[1] + '/' + coordinate[2] + '.png';
* }
*
*
* @param {module:ol/source/XYZ~Options=} opt_options XYZ options.
* @api
*/
constructor(opt_options) {
const options = opt_options || {};

View File

@@ -23,17 +23,17 @@ const TierSizeCalculation = {
};
/**
* @param {module:ol/tilegrid/TileGrid} tileGrid TileGrid that the tile belongs to.
* @param {module:ol/tilecoord~TileCoord} tileCoord Tile coordinate.
* @param {module:ol/TileState} state State.
* @param {string} src Image source URI.
* @param {?string} crossOrigin Cross origin.
* @param {module:ol/Tile~LoadFunction} tileLoadFunction Tile load function.
* @param {module:ol/Tile~Options=} opt_options Tile options.
*/
export class CustomTile extends ImageTile {
/**
* @param {module:ol/tilegrid/TileGrid} tileGrid TileGrid that the tile belongs to.
* @param {module:ol/tilecoord~TileCoord} tileCoord Tile coordinate.
* @param {module:ol/TileState} state State.
* @param {string} src Image source URI.
* @param {?string} crossOrigin Cross origin.
* @param {module:ol/Tile~LoadFunction} tileLoadFunction Tile load function.
* @param {module:ol/Tile~Options=} opt_options Tile options.
*/
constructor(tileGrid, tileCoord, state, src, crossOrigin, tileLoadFunction, opt_options) {
super(tileCoord, state, src, crossOrigin, tileLoadFunction, opt_options);
@@ -115,15 +115,16 @@ CustomTile.prototype.getImage = function() {
*/
/**
* @classdesc
* Layer source for tile data in Zoomify format (both Zoomify and Internet
* Imaging Protocol are supported).
* @api
*/
class Zoomify extends TileImage {
/**
* @classdesc
* Layer source for tile data in Zoomify format (both Zoomify and Internet
* Imaging Protocol are supported).
*
* @param {module:ol/source/Zoomify~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -17,6 +17,7 @@ import EventType from '../events/EventType.js';
/**
* @classdesc
* Implements a Least-Recently-Used cache where the keys do not conflict with
* Object's properties (e.g. 'hasOwnProperty' is not allowed as a key). Expiring
* items from the cache is the responsibility of the user.

View File

@@ -10,12 +10,13 @@
* @property {?} data
*/
/**
* @classdesc
* Creates an empty linked list structure.
*/
class LinkedList {
/**
* Creates an empty linked list structure.
*
* @param {boolean=} opt_circular The last item is connected to the first one,
* and the first item to the last one. Default is true.
*/

View File

@@ -12,6 +12,7 @@ export const DROP = Infinity;
/**
* @classdesc
* Priority queue.
*
* The implementation is inspired from the Closure Library's Heap class and

View File

@@ -16,13 +16,13 @@ import {isEmpty} from '../obj.js';
*/
/**
* @classdesc
* Wrapper around the RBush by Vladimir Agafonkin.
* See https://github.com/mourner/rbush.
*
* @template T
*/
class RBush {
/**
* @param {number=} opt_maxEntries Max entries.
*/

View File

@@ -21,16 +21,26 @@ import {createCanvasContext2D} from '../dom.js';
* @property {HTMLCanvasElement} image
*/
/**
* @classesc
* This class facilitates the creation of image atlases.
*
* Images added to an atlas will be rendered onto a single
* atlas canvas. The distribution of images on the canvas is
* managed with the bin packing algorithm described in:
* http://www.blackpawn.com/texts/lightmaps/
*
* @param {number} size The size in pixels of the sprite image.
* @param {number} space The space in pixels between images.
* Because texture coordinates are float values, the edges of
* images might not be completely correct (in a way that the
* edges overlap when being rendered). To avoid this we add a
* padding around each image.
*/
class Atlas {
/**
* This class facilitates the creation of image atlases.
*
* Images added to an atlas will be rendered onto a single
* atlas canvas. The distribution of images on the canvas is
* managed with the bin packing algorithm described in:
* http://www.blackpawn.com/texts/lightmaps/
*
* @param {number} size The size in pixels of the sprite image.
* @param {number} space The space in pixels between images.
* Because texture coordinates are float values, the edges of

View File

@@ -41,20 +41,22 @@ const INITIAL_ATLAS_SIZE = 256;
const MAX_ATLAS_SIZE = -1;
/**
* @classdesc
* Manages the creation of image atlases.
*
* Images added to this manager will be inserted into an atlas, which
* will be used for rendering.
* The `size` given in the constructor is the size for the first
* atlas. After that, when new atlases are created, they will have
* twice the size as the latest atlas (until `maxSize` is reached).
*
* If an application uses many images or very large images, it is recommended
* to set a higher `size` value to avoid the creation of too many atlases.
* @api
*/
class AtlasManager {
/**
* Manages the creation of image atlases.
*
* Images added to this manager will be inserted into an atlas, which
* will be used for rendering.
* The `size` given in the constructor is the size for the first
* atlas. After that, when new atlases are created, they will have
* twice the size as the latest atlas (until `maxSize` is reached).
*
* If an application uses many images or very large images, it is recommended
* to set a higher `size` value to avoid the creation of too many atlases.
*
* @api
* @param {module:ol/style/AtlasManager~Options=} opt_options Options.
*/
constructor(opt_options) {

View File

@@ -20,13 +20,14 @@ import RegularShape from '../style/RegularShape.js';
*/
/**
* @classdesc
* Set circle style for vector features.
* @api
*/
class CircleStyle extends RegularShape {
/**
* @classdesc
* Set circle style for vector features.
*
* @param {module:ol/style/Circle~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -16,11 +16,11 @@ import {asString} from '../color.js';
/**
* @classdesc
* Set fill style for vector features.
* @api
*/
class Fill {
/**
* @param {module:ol/style/Fill~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -52,13 +52,14 @@ import ImageStyle from '../style/Image.js';
*/
/**
* @classdesc
* Set icon style for vector features.
* @api
*/
class Icon extends ImageStyle {
/**
* @classdesc
* Set icon style for vector features.
*
* @param {module:ol/style/Icon~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {
const options = opt_options || {};

View File

@@ -4,6 +4,7 @@
import {asString} from '../color.js';
/**
* @classdesc
* Singleton class. Available through {@link module:ol/style/IconImageCache~shared}.
*/
class IconImageCache {

View File

@@ -18,11 +18,11 @@
* A base class used for creating subclasses and not instantiated in
* apps. Base class for {@link module:ol/style/Icon~Icon}, {@link module:ol/style/Circle~CircleStyle} and
* {@link module:ol/style/RegularShape~RegularShape}.
* @api
*/
class ImageStyle {
/**
* @param {module:ol/style/Image~Options} options Options.
* @api
*/
constructor(options) {

View File

@@ -46,15 +46,16 @@ import ImageStyle from '../style/Image.js';
*/
/**
* @classdesc
* Set regular shape style for vector features. The resulting shape will be
* a regular polygon when `radius` is provided, or a star when `radius1` and
* `radius2` are provided.
* @api
*/
class RegularShape extends ImageStyle {
/**
* @classdesc
* Set regular shape style for vector features. The resulting shape will be
* a regular polygon when `radius` is provided, or a star when `radius1` and
* `radius2` are provided.
*
* @param {module:ol/style/RegularShape~Options} options Options.
* @api
*/
constructor(options) {
/**

View File

@@ -26,12 +26,11 @@ import {getUid} from '../util.js';
* Note that the defaults given are the Canvas defaults, which will be used if
* option is not defined. The `get` functions return whatever was entered in
* the options; they will not return the default.
* @api
*/
class Stroke {
/**
* @param {module:ol/style/Stroke~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -143,12 +143,11 @@ import Stroke from '../style/Stroke.js';
* Container for vector feature rendering styles. Any changes made to the style
* or its children through `set*()` methods will not take effect until the
* feature or layer that uses the style is re-rendered.
* @api
*/
class Style {
/**
* @param {module:ol/style/Style~Options=} opt_options Style options.
* @api
*/
constructor(opt_options) {

View File

@@ -48,12 +48,11 @@ const DEFAULT_FILL_COLOR = '#333';
/**
* @classdesc
* Set text style for vector features.
* @api
*/
class Text {
/**
* @param {module:ol/style/Text~Options=} opt_options Options.
* @api
*/
constructor(opt_options) {

View File

@@ -48,12 +48,11 @@ const tmpTileCoord = [0, 0, 0];
* @classdesc
* Base class for setting the grid pattern for sources accessing tiled-image
* servers.
* @api
*/
class TileGrid {
/**
* @param {module:ol/tilegrid/TileGrid~Options} options Tile grid options.
* @api
*/
constructor(options) {

Some files were not shown because too many files have changed in this diff Show More