ol 7.5.1 → 8.0.0-dev.1692053484481
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/DataTile.d.ts +2 -2
- package/DataTile.d.ts.map +1 -1
- package/DataTile.js +3 -2
- package/Image.d.ts +139 -40
- package/Image.d.ts.map +1 -1
- package/Image.js +194 -96
- package/ImageCanvas.d.ts +2 -2
- package/ImageCanvas.d.ts.map +1 -1
- package/ImageCanvas.js +2 -2
- package/Object.d.ts +7 -0
- package/Object.d.ts.map +1 -1
- package/Object.js +8 -0
- package/dist/ol.js +2 -2
- package/dist/ol.js.map +1 -1
- package/expr/cpu.d.ts +71 -0
- package/expr/cpu.d.ts.map +1 -0
- package/expr/cpu.js +312 -0
- package/expr/expression.d.ts +97 -0
- package/expr/expression.d.ts.map +1 -0
- package/expr/expression.js +373 -0
- package/has.d.ts +5 -0
- package/has.d.ts.map +1 -1
- package/has.js +6 -0
- package/index.d.ts +1 -2
- package/index.js +1 -1
- package/layer/Base.d.ts +12 -8
- package/layer/Base.d.ts.map +1 -1
- package/layer/Base.js +12 -8
- package/layer/BaseVector.d.ts.map +1 -1
- package/layer/BaseVector.js +67 -33
- package/layer/Heatmap.d.ts.map +1 -1
- package/layer/Heatmap.js +16 -55
- package/layer/Layer.d.ts +2 -2
- package/layer/Layer.d.ts.map +1 -1
- package/layer/Layer.js +1 -1
- package/layer/WebGLPoints.d.ts +7 -12
- package/layer/WebGLPoints.d.ts.map +1 -1
- package/layer/WebGLPoints.js +7 -12
- package/package.json +1 -1
- package/render/Feature.d.ts +8 -0
- package/render/Feature.d.ts.map +1 -1
- package/render/Feature.js +9 -0
- package/render/canvas/Immediate.d.ts.map +1 -1
- package/render/canvas/Immediate.js +5 -3
- package/render/canvas/TextBuilder.js +2 -2
- package/render/canvas/style.d.ts +69 -0
- package/render/canvas/style.d.ts.map +1 -0
- package/render/canvas/style.js +1192 -0
- package/render/canvas.js +1 -1
- package/render/webgl/VectorStyleRenderer.d.ts.map +1 -1
- package/render/webgl/VectorStyleRenderer.js +4 -0
- package/renderer/Layer.d.ts +2 -2
- package/renderer/Layer.d.ts.map +1 -1
- package/renderer/Layer.js +1 -1
- package/renderer/canvas/ImageLayer.d.ts +4 -4
- package/renderer/canvas/ImageLayer.d.ts.map +1 -1
- package/renderer/canvas/ImageLayer.js +17 -12
- package/renderer/canvas/Layer.d.ts +2 -2
- package/renderer/canvas/Layer.d.ts.map +1 -1
- package/renderer/canvas/Layer.js +1 -1
- package/renderer/canvas/VectorImageLayer.d.ts.map +1 -1
- package/renderer/canvas/VectorImageLayer.js +3 -2
- package/renderer/webgl/VectorLayer.d.ts +1 -2
- package/renderer/webgl/VectorLayer.d.ts.map +1 -1
- package/reproj/Image.d.ts +5 -5
- package/reproj/Image.d.ts.map +1 -1
- package/reproj/Image.js +6 -6
- package/reproj.d.ts +2 -2
- package/reproj.d.ts.map +1 -1
- package/reproj.js +1 -1
- package/resolution.d.ts +13 -0
- package/resolution.d.ts.map +1 -0
- package/resolution.js +18 -0
- package/source/Image.d.ts +44 -7
- package/source/Image.d.ts.map +1 -1
- package/source/Image.js +97 -8
- package/source/ImageArcGISRest.d.ts +0 -23
- package/source/ImageArcGISRest.d.ts.map +1 -1
- package/source/ImageArcGISRest.js +18 -120
- package/source/ImageMapGuide.d.ts +0 -24
- package/source/ImageMapGuide.d.ts.map +1 -1
- package/source/ImageMapGuide.js +21 -113
- package/source/ImageStatic.d.ts +2 -27
- package/source/ImageStatic.d.ts.map +1 -1
- package/source/ImageStatic.js +20 -70
- package/source/ImageWMS.d.ts +2 -46
- package/source/ImageWMS.d.ts.map +1 -1
- package/source/ImageWMS.js +43 -201
- package/source/{Stamen.d.ts → StadiaMaps.d.ts} +17 -7
- package/source/StadiaMaps.d.ts.map +1 -0
- package/source/{Stamen.js → StadiaMaps.js} +85 -38
- package/source/TileArcGISRest.d.ts.map +1 -1
- package/source/TileArcGISRest.js +11 -22
- package/source/TileWMS.d.ts +0 -1
- package/source/TileWMS.d.ts.map +1 -1
- package/source/TileWMS.js +43 -106
- package/source/arcgisRest.d.ts +88 -0
- package/source/arcgisRest.d.ts.map +1 -0
- package/source/arcgisRest.js +131 -0
- package/source/common.d.ts +5 -0
- package/source/common.d.ts.map +1 -1
- package/source/common.js +6 -0
- package/source/mapguide.d.ts +52 -0
- package/source/mapguide.d.ts.map +1 -0
- package/source/mapguide.js +116 -0
- package/source/static.d.ts +45 -0
- package/source/static.d.ts.map +1 -0
- package/source/static.js +44 -0
- package/source/wms.d.ts +109 -1
- package/source/wms.d.ts.map +1 -1
- package/source/wms.js +170 -0
- package/source.d.ts +5 -1
- package/source.d.ts.map +1 -1
- package/source.js +5 -1
- package/style/flat.d.ts +332 -173
- package/style/flat.d.ts.map +1 -1
- package/style/flat.js +176 -248
- package/style/literal.d.ts +27 -72
- package/style/literal.d.ts.map +1 -1
- package/style/literal.js +14 -35
- package/util.d.ts.map +1 -1
- package/util.js +1 -1
- package/webgl/Helper.d.ts +7 -2
- package/webgl/Helper.d.ts.map +1 -1
- package/webgl/Helper.js +16 -27
- package/webgl/ShaderBuilder.d.ts +4 -14
- package/webgl/ShaderBuilder.d.ts.map +1 -1
- package/webgl/ShaderBuilder.js +72 -72
- package/webgl/styleparser.d.ts +3 -9
- package/webgl/styleparser.d.ts.map +1 -1
- package/webgl/styleparser.js +503 -88
- package/ImageBase.d.ts +0 -65
- package/ImageBase.d.ts.map +0 -1
- package/ImageBase.js +0 -98
- package/source/Stamen.d.ts.map +0 -1
package/style/literal.d.ts
CHANGED
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
export type SymbolType = string;
|
|
2
|
-
export namespace SymbolType {
|
|
3
|
-
let CIRCLE: string;
|
|
4
|
-
let SQUARE: string;
|
|
5
|
-
let TRIANGLE: string;
|
|
6
|
-
let IMAGE: string;
|
|
7
|
-
}
|
|
8
1
|
export type ExpressionValue = import("./expressions.js").ExpressionValue;
|
|
9
2
|
export type ColorExpression = import("../color.js").Color | string | Array<ExpressionValue>;
|
|
10
3
|
export type BaseProps = {
|
|
@@ -20,52 +13,6 @@ export type BaseProps = {
|
|
|
20
13
|
variables?: {
|
|
21
14
|
[x: string]: string | number | boolean | number[];
|
|
22
15
|
} | undefined;
|
|
23
|
-
/**
|
|
24
|
-
* Symbol representation.
|
|
25
|
-
*/
|
|
26
|
-
symbol?: LiteralSymbolStyle | undefined;
|
|
27
|
-
};
|
|
28
|
-
export type LiteralSymbolStyle = {
|
|
29
|
-
/**
|
|
30
|
-
* Size, mandatory.
|
|
31
|
-
*/
|
|
32
|
-
size: ExpressionValue | Array<ExpressionValue>;
|
|
33
|
-
/**
|
|
34
|
-
* Symbol type to use, either a regular shape or an image.
|
|
35
|
-
*/
|
|
36
|
-
symbolType: SymbolType;
|
|
37
|
-
/**
|
|
38
|
-
* Path to the image to be used for the symbol. Only required with `symbolType: 'image'`.
|
|
39
|
-
*/
|
|
40
|
-
src?: string | undefined;
|
|
41
|
-
/**
|
|
42
|
-
* The `crossOrigin` attribute for loading `src`.
|
|
43
|
-
*/
|
|
44
|
-
crossOrigin?: string | undefined;
|
|
45
|
-
/**
|
|
46
|
-
* Color used for the representation (either fill, line or symbol).
|
|
47
|
-
*/
|
|
48
|
-
color?: ColorExpression | undefined;
|
|
49
|
-
/**
|
|
50
|
-
* Opacity.
|
|
51
|
-
*/
|
|
52
|
-
opacity?: import("./expressions.js").ExpressionValue | undefined;
|
|
53
|
-
/**
|
|
54
|
-
* Symbol rotation in radians.
|
|
55
|
-
*/
|
|
56
|
-
rotation?: import("./expressions.js").ExpressionValue | undefined;
|
|
57
|
-
/**
|
|
58
|
-
* Offset on X and Y axis for symbols. If not specified, the symbol will be centered.
|
|
59
|
-
*/
|
|
60
|
-
offset?: import("./expressions.js").ExpressionValue[] | undefined;
|
|
61
|
-
/**
|
|
62
|
-
* Texture coordinates. If not specified, the whole texture will be used (range for 0 to 1 on both axes).
|
|
63
|
-
*/
|
|
64
|
-
textureCoord?: import("./expressions.js").ExpressionValue[] | undefined;
|
|
65
|
-
/**
|
|
66
|
-
* Specify whether the symbol must rotate with the view or stay upwards.
|
|
67
|
-
*/
|
|
68
|
-
rotateWithView?: boolean | undefined;
|
|
69
16
|
};
|
|
70
17
|
export type FillProps = {
|
|
71
18
|
/**
|
|
@@ -102,7 +49,7 @@ export type IconProps = {
|
|
|
102
49
|
/**
|
|
103
50
|
* Anchor. Default value is the icon center.
|
|
104
51
|
*/
|
|
105
|
-
"icon-anchor"?: number[] | undefined;
|
|
52
|
+
"icon-anchor"?: number[] | import("./expressions.js").ExpressionValue | undefined;
|
|
106
53
|
/**
|
|
107
54
|
* Origin of the anchor: `bottom-left`, `bottom-right`,
|
|
108
55
|
* `top-left` or `top-right`.
|
|
@@ -125,34 +72,24 @@ export type IconProps = {
|
|
|
125
72
|
* the icon will be left as is.
|
|
126
73
|
*/
|
|
127
74
|
"icon-color"?: ColorExpression | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* Opacity of the icon.
|
|
77
|
+
*/
|
|
78
|
+
"icon-opacity"?: import("./expressions.js").ExpressionValue | undefined;
|
|
128
79
|
/**
|
|
129
80
|
* The `crossOrigin` attribute for loaded images. Note that you must provide a
|
|
130
81
|
* `icon-cross-origin` value if you want to access pixel data with the Canvas renderer.
|
|
131
82
|
* See https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image for more detail.
|
|
132
83
|
*/
|
|
133
84
|
"icon-cross-origin"?: string | null | undefined;
|
|
134
|
-
/**
|
|
135
|
-
* Offset, which, together with the size and the offset origin, define the
|
|
136
|
-
* sub-rectangle to use from the original icon image.
|
|
137
|
-
*/
|
|
138
|
-
"icon-offset"?: number[] | import("./expressions.js").ExpressionValue[] | undefined;
|
|
139
85
|
/**
|
|
140
86
|
* Displacement of the icon.
|
|
141
87
|
*/
|
|
142
|
-
"icon-displacement"?: number[] | import("./expressions.js").ExpressionValue
|
|
143
|
-
/**
|
|
144
|
-
* Origin of the offset: `bottom-left`, `bottom-right`,
|
|
145
|
-
* `top-left` or `top-right`.
|
|
146
|
-
*/
|
|
147
|
-
"icon-offset-origin"?: import("./Icon.js").IconOrigin | undefined;
|
|
148
|
-
/**
|
|
149
|
-
* Opacity of the icon.
|
|
150
|
-
*/
|
|
151
|
-
"icon-opacity"?: number | undefined;
|
|
88
|
+
"icon-displacement"?: number[] | import("./expressions.js").ExpressionValue | undefined;
|
|
152
89
|
/**
|
|
153
90
|
* Scale.
|
|
154
91
|
*/
|
|
155
|
-
"icon-scale"?: import("../size.js").Size | import("./expressions.js").ExpressionValue |
|
|
92
|
+
"icon-scale"?: import("../size.js").Size | import("./expressions.js").ExpressionValue | undefined;
|
|
156
93
|
/**
|
|
157
94
|
* Width of the icon. If not specified, the actual image width will be used. Cannot be combined
|
|
158
95
|
* with `scale`.
|
|
@@ -171,18 +108,28 @@ export type IconProps = {
|
|
|
171
108
|
* Whether to rotate the icon with the view.
|
|
172
109
|
*/
|
|
173
110
|
"icon-rotate-with-view"?: boolean | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* Offset, which, together with the size and the offset origin, define the
|
|
113
|
+
* sub-rectangle to use from the original icon image.
|
|
114
|
+
*/
|
|
115
|
+
"icon-offset"?: number[] | import("./expressions.js").ExpressionValue | undefined;
|
|
116
|
+
/**
|
|
117
|
+
* Origin of the offset: `bottom-left`, `bottom-right`,
|
|
118
|
+
* `top-left` or `top-right`.
|
|
119
|
+
*/
|
|
120
|
+
"icon-offset-origin"?: import("./Icon.js").IconOrigin | undefined;
|
|
174
121
|
/**
|
|
175
122
|
* Icon size in pixel. Can be used together with `icon-offset` to define the
|
|
176
123
|
* sub-rectangle to use from the origin (sprite) icon image.
|
|
177
124
|
*/
|
|
178
|
-
"icon-size"?: import("../size.js").Size | import("./expressions.js").ExpressionValue
|
|
125
|
+
"icon-size"?: import("../size.js").Size | import("./expressions.js").ExpressionValue | undefined;
|
|
179
126
|
};
|
|
180
127
|
export type ShapeProps = {
|
|
181
128
|
/**
|
|
182
129
|
* Number of points for stars and regular polygons. In case of a polygon, the number of points
|
|
183
130
|
* is the number of sides.
|
|
184
131
|
*/
|
|
185
|
-
"shape-points"?:
|
|
132
|
+
"shape-points"?: import("./expressions.js").ExpressionValue | undefined;
|
|
186
133
|
/**
|
|
187
134
|
* The fill color.
|
|
188
135
|
*/
|
|
@@ -195,6 +142,10 @@ export type ShapeProps = {
|
|
|
195
142
|
* Stroke pixel width.
|
|
196
143
|
*/
|
|
197
144
|
"shape-stroke-width"?: import("./expressions.js").ExpressionValue | undefined;
|
|
145
|
+
/**
|
|
146
|
+
* Shape opacity.
|
|
147
|
+
*/
|
|
148
|
+
"shape-opacity"?: import("./expressions.js").ExpressionValue | undefined;
|
|
198
149
|
/**
|
|
199
150
|
* Radius of a regular polygon.
|
|
200
151
|
*/
|
|
@@ -246,6 +197,10 @@ export type CircleProps = {
|
|
|
246
197
|
* Stroke pixel width.
|
|
247
198
|
*/
|
|
248
199
|
"circle-stroke-width"?: import("./expressions.js").ExpressionValue | undefined;
|
|
200
|
+
/**
|
|
201
|
+
* Circle opacity.
|
|
202
|
+
*/
|
|
203
|
+
"circle-opacity"?: import("./expressions.js").ExpressionValue | undefined;
|
|
249
204
|
/**
|
|
250
205
|
* displacement
|
|
251
206
|
*/
|
package/style/literal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["literal.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["literal.js"],"names":[],"mappings":"8BAOa,OAAO,kBAAkB,EAAE,eAAe;8BAG1C,OAAO,aAAa,EAAE,KAAK,GAAC,MAAM,GAAC,MAAM,eAAe,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BA8GzD,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU"}
|
package/style/literal.js
CHANGED
|
@@ -17,31 +17,6 @@
|
|
|
17
17
|
* point will be displayed. If undefined, all points will show.
|
|
18
18
|
* @property {Object<string, number | Array<number> | string | boolean>} [variables] Style variables; each variable must hold a number.
|
|
19
19
|
* Note: **this object is meant to be mutated**: changes to the values will immediately be visible on the rendered features
|
|
20
|
-
* @property {LiteralSymbolStyle} [symbol] Symbol representation.
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* @enum {string}
|
|
25
|
-
*/
|
|
26
|
-
export const SymbolType = {
|
|
27
|
-
CIRCLE: 'circle',
|
|
28
|
-
SQUARE: 'square',
|
|
29
|
-
TRIANGLE: 'triangle',
|
|
30
|
-
IMAGE: 'image',
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* @typedef {Object} LiteralSymbolStyle
|
|
35
|
-
* @property {ExpressionValue|Array<ExpressionValue>} size Size, mandatory.
|
|
36
|
-
* @property {SymbolType} symbolType Symbol type to use, either a regular shape or an image.
|
|
37
|
-
* @property {string} [src] Path to the image to be used for the symbol. Only required with `symbolType: 'image'`.
|
|
38
|
-
* @property {string} [crossOrigin='anonymous'] The `crossOrigin` attribute for loading `src`.
|
|
39
|
-
* @property {ColorExpression} [color] Color used for the representation (either fill, line or symbol).
|
|
40
|
-
* @property {ExpressionValue} [opacity=1] Opacity.
|
|
41
|
-
* @property {ExpressionValue} [rotation=0] Symbol rotation in radians.
|
|
42
|
-
* @property {Array<ExpressionValue, ExpressionValue>} [offset] Offset on X and Y axis for symbols. If not specified, the symbol will be centered.
|
|
43
|
-
* @property {Array<ExpressionValue, ExpressionValue, ExpressionValue, ExpressionValue>} [textureCoord] Texture coordinates. If not specified, the whole texture will be used (range for 0 to 1 on both axes).
|
|
44
|
-
* @property {boolean} [rotateWithView=false] Specify whether the symbol must rotate with the view or stay upwards.
|
|
45
20
|
*/
|
|
46
21
|
|
|
47
22
|
/**
|
|
@@ -63,7 +38,7 @@ export const SymbolType = {
|
|
|
63
38
|
* to provide the size of the image, with the `icon-img-size` option.
|
|
64
39
|
* @property {import("../size.js").Size} [icon-img-size] Image size in pixels. Only required if `icon-img` is set and `icon-src` is not.
|
|
65
40
|
* The provided size needs to match the actual size of the image.
|
|
66
|
-
* @property {Array<number
|
|
41
|
+
* @property {Array<number>|ExpressionValue} [icon-anchor=[0.5, 0.5]] Anchor. Default value is the icon center.
|
|
67
42
|
* @property {import("./Icon.js").IconOrigin} [icon-anchor-origin='top-left'] Origin of the anchor: `bottom-left`, `bottom-right`,
|
|
68
43
|
* `top-left` or `top-right`.
|
|
69
44
|
* @property {import("./Icon.js").IconAnchorUnits} [icon-anchor-x-units='fraction'] Units in which the anchor x value is
|
|
@@ -74,33 +49,34 @@ export const SymbolType = {
|
|
|
74
49
|
* the y value in pixels.
|
|
75
50
|
* @property {ColorExpression} [icon-color] Color to tint the icon. If not specified,
|
|
76
51
|
* the icon will be left as is.
|
|
52
|
+
* @property {ExpressionValue|number} [icon-opacity=1] Opacity of the icon.
|
|
77
53
|
* @property {null|string} [icon-cross-origin] The `crossOrigin` attribute for loaded images. Note that you must provide a
|
|
78
54
|
* `icon-cross-origin` value if you want to access pixel data with the Canvas renderer.
|
|
79
55
|
* See https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_enabled_image for more detail.
|
|
80
|
-
* @property {Array<number>|
|
|
81
|
-
*
|
|
82
|
-
* @property {Array<number>|Array<ExpressionValue>} [icon-displacement=[0,0]] Displacement of the icon.
|
|
83
|
-
* @property {import("./Icon.js").IconOrigin} [icon-offset-origin='top-left'] Origin of the offset: `bottom-left`, `bottom-right`,
|
|
84
|
-
* `top-left` or `top-right`.
|
|
85
|
-
* @property {number} [icon-opacity=1] Opacity of the icon.
|
|
86
|
-
* @property {ExpressionValue|Array<ExpressionValue>|number|import("../size.js").Size} [icon-scale=1] Scale.
|
|
56
|
+
* @property {Array<number>|ExpressionValue} [icon-displacement=[0,0]] Displacement of the icon.
|
|
57
|
+
* @property {ExpressionValue|number|import("../size.js").Size} [icon-scale=1] Scale.
|
|
87
58
|
* @property {ExpressionValue|number} [icon-width] Width of the icon. If not specified, the actual image width will be used. Cannot be combined
|
|
88
59
|
* with `scale`.
|
|
89
60
|
* @property {ExpressionValue|number} [icon-height] Height of the icon. If not specified, the actual image height will be used. Cannot be combined
|
|
90
61
|
* with `scale`.
|
|
91
62
|
* @property {ExpressionValue|number} [icon-rotation=0] Rotation in radians (positive rotation clockwise).
|
|
92
63
|
* @property {boolean} [icon-rotate-with-view=false] Whether to rotate the icon with the view.
|
|
93
|
-
* @property {Array<ExpressionValue
|
|
64
|
+
* @property {Array<number>|ExpressionValue} [icon-offset=[0, 0]] Offset, which, together with the size and the offset origin, define the
|
|
65
|
+
* sub-rectangle to use from the original icon image.
|
|
66
|
+
* @property {import("./Icon.js").IconOrigin} [icon-offset-origin='top-left'] Origin of the offset: `bottom-left`, `bottom-right`,
|
|
67
|
+
* `top-left` or `top-right`.
|
|
68
|
+
* @property {ExpressionValue|import("../size.js").Size} [icon-size] Icon size in pixel. Can be used together with `icon-offset` to define the
|
|
94
69
|
* sub-rectangle to use from the origin (sprite) icon image.
|
|
95
70
|
*/
|
|
96
71
|
|
|
97
72
|
/**
|
|
98
73
|
* @typedef {Object} ShapeProps
|
|
99
|
-
* @property {number} [shape-points] Number of points for stars and regular polygons. In case of a polygon, the number of points
|
|
74
|
+
* @property {ExpressionValue|number} [shape-points] Number of points for stars and regular polygons. In case of a polygon, the number of points
|
|
100
75
|
* is the number of sides.
|
|
101
76
|
* @property {ColorExpression} [shape-fill-color] The fill color.
|
|
102
77
|
* @property {ColorExpression} [shape-stroke-color] The stroke color.
|
|
103
78
|
* @property {ExpressionValue|number} [shape-stroke-width] Stroke pixel width.
|
|
79
|
+
* @property {ExpressionValue|number} [shape-opacity] Shape opacity.
|
|
104
80
|
* @property {ExpressionValue|number} [shape-radius] Radius of a regular polygon.
|
|
105
81
|
* @property {ExpressionValue|number} [shape-radius1] First radius of a star. Ignored if radius is set.
|
|
106
82
|
* @property {ExpressionValue|number} [shape-radius2] Second radius of a star.
|
|
@@ -118,6 +94,7 @@ export const SymbolType = {
|
|
|
118
94
|
* @property {ColorExpression} [circle-fill-color] The fill color.
|
|
119
95
|
* @property {ColorExpression} [circle-stroke-color] The stroke color.
|
|
120
96
|
* @property {ExpressionValue|number} [circle-stroke-width] Stroke pixel width.
|
|
97
|
+
* @property {ExpressionValue|number} [circle-opacity] Circle opacity.
|
|
121
98
|
* @property {Array<ExpressionValue>|Array<number>} [circle-displacement=[0,0]] displacement
|
|
122
99
|
* @property {ExpressionValue|Array<ExpressionValue>|number|import("../size.js").Size} [circle-scale=1] Scale. A two dimensional scale will produce an ellipse.
|
|
123
100
|
* Unless two dimensional scaling is required a better result may be obtained with an appropriate setting for `circle-radius`.
|
|
@@ -143,3 +120,5 @@ export const SymbolType = {
|
|
|
143
120
|
/**
|
|
144
121
|
* @typedef {BaseProps & IconProps & StrokeProps & FillProps & CircleProps & ShapeProps} LiteralStyle
|
|
145
122
|
*/
|
|
123
|
+
|
|
124
|
+
export {};
|
package/util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["util.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,4BAFY,KAAK,CAIhB;AASD;;;;;;;;GAQG;AACH,kCAHY,MAAM,CAKjB;AAED;;;GAGG;AACH,sBAFU,MAAM,
|
|
1
|
+
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["util.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,4BAFY,KAAK,CAIhB;AASD;;;;;;;;GAQG;AACH,kCAHY,MAAM,CAKjB;AAED;;;GAGG;AACH,sBAFU,MAAM,CAEiC"}
|
package/util.js
CHANGED
package/webgl/Helper.d.ts
CHANGED
|
@@ -19,11 +19,10 @@ export namespace ShaderType {
|
|
|
19
19
|
export type DefaultUniform = string;
|
|
20
20
|
export namespace DefaultUniform {
|
|
21
21
|
let PROJECTION_MATRIX: string;
|
|
22
|
-
let OFFSET_SCALE_MATRIX: string;
|
|
23
|
-
let OFFSET_ROTATION_MATRIX: string;
|
|
24
22
|
let TIME: string;
|
|
25
23
|
let ZOOM: string;
|
|
26
24
|
let RESOLUTION: string;
|
|
25
|
+
let ROTATION: string;
|
|
27
26
|
let VIEWPORT_SIZE_PX: string;
|
|
28
27
|
let PIXEL_RATIO: string;
|
|
29
28
|
let HIT_DETECTION: string;
|
|
@@ -359,6 +358,12 @@ declare class WebGLHelper extends Disposable {
|
|
|
359
358
|
setUniforms(uniforms: {
|
|
360
359
|
[x: string]: UniformValue;
|
|
361
360
|
}): void;
|
|
361
|
+
/**
|
|
362
|
+
* @param {Object<string, UniformValue>} uniforms Uniform definitions.
|
|
363
|
+
*/
|
|
364
|
+
addUniforms(uniforms: {
|
|
365
|
+
[x: string]: UniformValue;
|
|
366
|
+
}): void;
|
|
362
367
|
/**
|
|
363
368
|
* @param {string} canvasCacheKey The canvas cache key.
|
|
364
369
|
* @return {boolean} The provided key matches the one this helper was constructed with.
|
package/webgl/Helper.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Helper.d.ts","sourceRoot":"","sources":["Helper.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Helper.d.ts","sourceRoot":"","sources":["Helper.js"],"names":[],"mappings":"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"}
|
package/webgl/Helper.js
CHANGED
|
@@ -15,9 +15,6 @@ import {clear} from '../obj.js';
|
|
|
15
15
|
import {
|
|
16
16
|
compose as composeTransform,
|
|
17
17
|
create as createTransform,
|
|
18
|
-
reset as resetTransform,
|
|
19
|
-
rotate as rotateTransform,
|
|
20
|
-
scale as scaleTransform,
|
|
21
18
|
} from '../transform.js';
|
|
22
19
|
import {create, fromTransform} from '../vec/mat4.js';
|
|
23
20
|
import {getUid} from '../util.js';
|
|
@@ -44,11 +41,10 @@ export const ShaderType = {
|
|
|
44
41
|
*/
|
|
45
42
|
export const DefaultUniform = {
|
|
46
43
|
PROJECTION_MATRIX: 'u_projectionMatrix',
|
|
47
|
-
OFFSET_SCALE_MATRIX: 'u_offsetScaleMatrix',
|
|
48
|
-
OFFSET_ROTATION_MATRIX: 'u_offsetRotateMatrix',
|
|
49
44
|
TIME: 'u_time',
|
|
50
45
|
ZOOM: 'u_zoom',
|
|
51
46
|
RESOLUTION: 'u_resolution',
|
|
47
|
+
ROTATION: 'u_rotation',
|
|
52
48
|
VIEWPORT_SIZE_PX: 'u_viewportSizePx',
|
|
53
49
|
PIXEL_RATIO: 'u_pixelRatio',
|
|
54
50
|
HIT_DETECTION: 'u_hitDetection',
|
|
@@ -450,6 +446,13 @@ class WebGLHelper extends Disposable {
|
|
|
450
446
|
*/
|
|
451
447
|
setUniforms(uniforms) {
|
|
452
448
|
this.uniforms_ = [];
|
|
449
|
+
this.addUniforms(uniforms);
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
/**
|
|
453
|
+
* @param {Object<string, UniformValue>} uniforms Uniform definitions.
|
|
454
|
+
*/
|
|
455
|
+
addUniforms(uniforms) {
|
|
453
456
|
for (const name in uniforms) {
|
|
454
457
|
this.uniforms_.push({
|
|
455
458
|
name: name,
|
|
@@ -706,23 +709,6 @@ class WebGLHelper extends Disposable {
|
|
|
706
709
|
const rotation = frameState.viewState.rotation;
|
|
707
710
|
const pixelRatio = frameState.pixelRatio;
|
|
708
711
|
|
|
709
|
-
const offsetScaleMatrix = resetTransform(this.offsetScaleMatrix_);
|
|
710
|
-
scaleTransform(offsetScaleMatrix, 2 / size[0], 2 / size[1]);
|
|
711
|
-
|
|
712
|
-
const offsetRotateMatrix = resetTransform(this.offsetRotateMatrix_);
|
|
713
|
-
if (rotation !== 0) {
|
|
714
|
-
rotateTransform(offsetRotateMatrix, -rotation);
|
|
715
|
-
}
|
|
716
|
-
|
|
717
|
-
this.setUniformMatrixValue(
|
|
718
|
-
DefaultUniform.OFFSET_SCALE_MATRIX,
|
|
719
|
-
fromTransform(this.tmpMat4_, offsetScaleMatrix)
|
|
720
|
-
);
|
|
721
|
-
this.setUniformMatrixValue(
|
|
722
|
-
DefaultUniform.OFFSET_ROTATION_MATRIX,
|
|
723
|
-
fromTransform(this.tmpMat4_, offsetRotateMatrix)
|
|
724
|
-
);
|
|
725
|
-
|
|
726
712
|
this.setUniformFloatValue(
|
|
727
713
|
DefaultUniform.TIME,
|
|
728
714
|
(Date.now() - this.startTime_) * 0.001
|
|
@@ -737,6 +723,7 @@ class WebGLHelper extends Disposable {
|
|
|
737
723
|
size[0],
|
|
738
724
|
size[1],
|
|
739
725
|
]);
|
|
726
|
+
this.setUniformFloatValue(DefaultUniform.ROTATION, rotation);
|
|
740
727
|
}
|
|
741
728
|
|
|
742
729
|
/**
|
|
@@ -746,6 +733,11 @@ class WebGLHelper extends Disposable {
|
|
|
746
733
|
applyHitDetectionUniform(enabled) {
|
|
747
734
|
const loc = this.getUniformLocation(DefaultUniform.HIT_DETECTION);
|
|
748
735
|
this.getGL().uniform1i(loc, enabled ? 1 : 0);
|
|
736
|
+
|
|
737
|
+
// hit detection uses a fixed pixel ratio
|
|
738
|
+
if (enabled) {
|
|
739
|
+
this.setUniformFloatValue(DefaultUniform.PIXEL_RATIO, 0.5);
|
|
740
|
+
}
|
|
749
741
|
}
|
|
750
742
|
|
|
751
743
|
/**
|
|
@@ -774,8 +766,7 @@ class WebGLHelper extends Disposable {
|
|
|
774
766
|
uniform.prevValue = undefined;
|
|
775
767
|
uniform.texture = gl.createTexture();
|
|
776
768
|
}
|
|
777
|
-
|
|
778
|
-
gl.bindTexture(gl.TEXTURE_2D, uniform.texture);
|
|
769
|
+
this.bindTexture(uniform.texture, textureSlot, uniform.name);
|
|
779
770
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);
|
|
780
771
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);
|
|
781
772
|
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);
|
|
@@ -794,9 +785,7 @@ class WebGLHelper extends Disposable {
|
|
|
794
785
|
value
|
|
795
786
|
);
|
|
796
787
|
}
|
|
797
|
-
|
|
798
|
-
// fill texture slots by increasing index
|
|
799
|
-
gl.uniform1i(this.getUniformLocation(uniform.name), textureSlot++);
|
|
788
|
+
textureSlot++;
|
|
800
789
|
} else if (Array.isArray(value) && value.length === 6) {
|
|
801
790
|
this.setUniformMatrixValue(
|
|
802
791
|
uniform.name,
|
package/webgl/ShaderBuilder.d.ts
CHANGED
|
@@ -164,6 +164,10 @@ export class ShaderBuilder {
|
|
|
164
164
|
* @return {ShaderBuilder} the builder object
|
|
165
165
|
*/
|
|
166
166
|
setSymbolOffsetExpression(expression: string): ShaderBuilder;
|
|
167
|
+
/**
|
|
168
|
+
* @return {string} The current symbol offset expression
|
|
169
|
+
*/
|
|
170
|
+
getSymbolOffsetExpression(): string;
|
|
167
171
|
/**
|
|
168
172
|
* Sets an expression to compute the color of the shape.
|
|
169
173
|
* This expression can use all the uniforms, varyings and attributes available
|
|
@@ -220,25 +224,11 @@ export class ShaderBuilder {
|
|
|
220
224
|
addFragmentShaderFunction(code: any): void;
|
|
221
225
|
/**
|
|
222
226
|
* Generates a symbol vertex shader from the builder parameters
|
|
223
|
-
*
|
|
224
|
-
* The following uniforms are hardcoded in all shaders: `u_projectionMatrix`, `u_offsetScaleMatrix`,
|
|
225
|
-
* `u_offsetRotateMatrix`, `u_time`, `u_zoom`, `u_resolution`, `u_hitDetection`.
|
|
226
|
-
*
|
|
227
|
-
* The following attributes are hardcoded and expected to be present in the vertex buffers:
|
|
228
|
-
* `vec2 a_position`, `float a_index` (being the index of the vertex in the quad, 0 to 3), `vec4 a_hitColor`.
|
|
229
|
-
*
|
|
230
|
-
* The following varyings are hardcoded and gives the coordinate of the pixel both in the quad and on the texture:
|
|
231
|
-
* `vec2 v_quadCoord`, `vec2 v_texCoord`, `vec4 v_hitColor`.
|
|
232
|
-
*
|
|
233
227
|
* @return {string|null} The full shader as a string; null if no size or color specified
|
|
234
228
|
*/
|
|
235
229
|
getSymbolVertexShader(): string | null;
|
|
236
230
|
/**
|
|
237
231
|
* Generates a symbol fragment shader from the builder parameters
|
|
238
|
-
*
|
|
239
|
-
* Expects the following varyings to be transmitted by the vertex shader:
|
|
240
|
-
* `vec2 v_quadCoord`, `vec2 v_texCoord`, `vec4 v_hitColor`.
|
|
241
|
-
*
|
|
242
232
|
* @return {string|null} The full shader as a string; null if no size or color specified
|
|
243
233
|
*/
|
|
244
234
|
getSymbolFragmentShader(): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShaderBuilder.d.ts","sourceRoot":"","sources":["ShaderBuilder.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ShaderBuilder.d.ts","sourceRoot":"","sources":["ShaderBuilder.js"],"names":[],"mappings":"AA2BA;;;;;;GAMG;AAEH;;;;;;;;;;;;;GAaG;AACH;IAEI;;;;OAIG;IACH,kBAAmB;IAEnB;;;;OAIG;IACH,oBAAqB;IAErB;;;;OAIG;IACH,kBAAmB;IAEnB;;;OAGG;IACH,mBAAuB;IAEvB;;;OAGG;IACH,8BAEkE;IAElE;;;OAGG;IACH,kCAAsC;IAEtC;;;OAGG;IACH,gCAA0C;IAE1C;;;OAGG;IACH,+BAEC;IAED;;;OAGG;IACH,4BAAqD;IAErD;;;OAGG;IACH,2BAAiC;IAEjC;;;OAGG;IACH,8BAAkC;IAElC;;;OAGG;IACH,mBAAuB;IAEvB;;;OAGG;IACH,+BAAyE;IAEzE;;;OAGG;IACH,+BAEC;IAED;;;OAGG;IACH,iBAAqB;IAErB;;;OAGG;IACH,6BAEC;IAED;;;OAGG;IACH,+BAAgC;IAEhC;;;OAGG;IACH,iCAAkC;IAGpC;;;;;OAKG;IACH,iBAHW,MAAM,GACL,aAAa,CAKxB;IAED;;;;;OAKG;IACH,mBAHW,MAAM,GACL,aAAa,CAKxB;IAED;;;;;;;OAOG;IACH,iBALW,MAAM,QACN,OAAO,GAAC,MAAM,GAAC,MAAM,GAAC,MAAM,cAC5B,MAAM,GACL,aAAa,CASxB;IAED;;;;;;OAMG;IACH,oCAHW,MAAM,GACL,aAAa,CAMxB;IAED;;OAEG;IACH,2BAFY,MAAM,CAIjB;IAED;;;;;;OAMG;IACH,wCAHW,MAAM,GACL,aAAa,CAKxB;IAED;;;;;;OAMG;IACH,sCAHW,MAAM,GACL,aAAa,CAKxB;IAED;;OAEG;IACH,6BAFY,MAAM,CAIjB;IAED;;;;;;OAMG;IACH,qCAHW,MAAM,GACL,aAAa,CAMxB;IAED;;OAEG;IACH,4BAFY,MAAM,CAIjB;IAED;;;;;;OAMG;IACH,2CAHW,MAAM,GACL,aAAa,CAKxB;IAED;;;;;;;;OAQG;IACH,yCAHW,MAAM,GACL,aAAa,CAKxB;IAED;;;;;OAKG;IACH,wCAHW,OAAO,GACN,aAAa,CAKxB;IAED;;;OAGG;IACH,qCAHW,MAAM,GACL,aAAa,CAMxB;IAED;;;OAGG;IACH,qCAHW,MAAM,GACL,aAAa,CAMxB;IAED;;;OAGG;IACH,mCAHW,MAAM,GACL,aAAa,CAMxB;IAED,yCAKC;IACD,2CAKC;IAED;;;OAGG;IACH,yBAFY,MAAM,GAAC,IAAI,CA4FtB;IAED;;;OAGG;IACH,2BAFY,MAAM,GAAC,IAAI,CAsCtB;IAED;;;OAGG;IACH,yBAFY,MAAM,GAAC,IAAI,CAoFtB;IAED;;;;OAIG;IACH,2BAFY,MAAM,GAAC,IAAI,CA8DtB;IAED;;;;OAIG;IACH,uBAFY,MAAM,GAAC,IAAI,CAoCtB;IAED;;;OAGG;IACH,yBAFY,MAAM,GAAC,IAAI,CA+CtB;CACF;;;;;UA5sBa,MAAM;;;;UACN,MAAM;;;;;gBACN,MAAM"}
|