@mapwhit/tilerenderer 0.52.1 → 1.1.0
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/README.md +7 -0
- package/build/min/package.json +2 -1
- package/build/min/src/shaders/_prelude.fragment.glsl.js +2 -2
- package/build/min/src/shaders/_prelude.vertex.glsl.js +2 -2
- package/build/min/src/shaders/background.fragment.glsl.js +2 -2
- package/build/min/src/shaders/background.vertex.glsl.js +1 -1
- package/build/min/src/shaders/background_pattern.fragment.glsl.js +2 -2
- package/build/min/src/shaders/background_pattern.vertex.glsl.js +1 -1
- package/build/min/src/shaders/circle.fragment.glsl.js +2 -2
- package/build/min/src/shaders/circle.vertex.glsl.js +2 -2
- package/build/min/src/shaders/clipping_mask.fragment.glsl.js +1 -1
- package/build/min/src/shaders/clipping_mask.vertex.glsl.js +1 -1
- package/build/min/src/shaders/collision_box.fragment.glsl.js +1 -1
- package/build/min/src/shaders/collision_box.vertex.glsl.js +1 -1
- package/build/min/src/shaders/collision_circle.fragment.glsl.js +1 -1
- package/build/min/src/shaders/collision_circle.vertex.glsl.js +1 -1
- package/build/min/src/shaders/debug.fragment.glsl.js +1 -1
- package/build/min/src/shaders/debug.vertex.glsl.js +1 -1
- package/build/min/src/shaders/fill.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill.vertex.glsl.js +2 -2
- package/build/min/src/shaders/fill_extrusion.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill_extrusion.vertex.glsl.js +2 -2
- package/build/min/src/shaders/fill_extrusion_pattern.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill_extrusion_pattern.vertex.glsl.js +2 -2
- package/build/min/src/shaders/fill_outline.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill_outline.vertex.glsl.js +2 -2
- package/build/min/src/shaders/fill_outline_pattern.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill_outline_pattern.vertex.glsl.js +2 -2
- package/build/min/src/shaders/fill_pattern.fragment.glsl.js +2 -2
- package/build/min/src/shaders/fill_pattern.vertex.glsl.js +2 -2
- package/build/min/src/shaders/heatmap.fragment.glsl.js +2 -2
- package/build/min/src/shaders/heatmap.vertex.glsl.js +2 -2
- package/build/min/src/shaders/heatmap_texture.fragment.glsl.js +2 -2
- package/build/min/src/shaders/heatmap_texture.vertex.glsl.js +1 -1
- package/build/min/src/shaders/hillshade.fragment.glsl.js +2 -2
- package/build/min/src/shaders/hillshade.vertex.glsl.js +1 -1
- package/build/min/src/shaders/hillshade_prepare.fragment.glsl.js +2 -2
- package/build/min/src/shaders/hillshade_prepare.vertex.glsl.js +1 -1
- package/build/min/src/shaders/line.fragment.glsl.js +2 -2
- package/build/min/src/shaders/line.vertex.glsl.js +2 -2
- package/build/min/src/shaders/line_gradient.fragment.glsl.js +2 -2
- package/build/min/src/shaders/line_gradient.vertex.glsl.js +2 -2
- package/build/min/src/shaders/line_pattern.fragment.glsl.js +2 -2
- package/build/min/src/shaders/line_pattern.vertex.glsl.js +2 -2
- package/build/min/src/shaders/line_sdf.fragment.glsl.js +2 -2
- package/build/min/src/shaders/line_sdf.vertex.glsl.js +2 -2
- package/build/min/src/shaders/raster.fragment.glsl.js +2 -2
- package/build/min/src/shaders/raster.vertex.glsl.js +1 -1
- package/build/min/src/shaders/symbol_icon.fragment.glsl.js +2 -2
- package/build/min/src/shaders/symbol_icon.vertex.glsl.js +2 -2
- package/build/min/src/shaders/symbol_sdf.fragment.glsl.js +2 -2
- package/build/min/src/shaders/symbol_sdf.vertex.glsl.js +2 -2
- package/package.json +5 -4
- package/src/data/array_types.js +55 -117
- package/src/data/bucket/circle_attributes.js +2 -4
- package/src/data/bucket/circle_bucket.js +19 -16
- package/src/data/bucket/fill_attributes.js +2 -4
- package/src/data/bucket/fill_bucket.js +38 -27
- package/src/data/bucket/fill_extrusion_attributes.js +2 -4
- package/src/data/bucket/fill_extrusion_bucket.js +56 -37
- package/src/data/bucket/heatmap_bucket.js +2 -11
- package/src/data/bucket/line_attributes.js +2 -4
- package/src/data/bucket/line_bucket.js +208 -163
- package/src/data/bucket/pattern_attributes.js +2 -4
- package/src/data/bucket/pattern_bucket_features.js +7 -9
- package/src/data/bucket/symbol_attributes.js +12 -26
- package/src/data/bucket/symbol_bucket.js +174 -323
- package/src/data/bucket/symbol_buffers.js +62 -0
- package/src/data/bucket/symbol_collision_buffers.js +33 -0
- package/src/data/bucket.js +26 -25
- package/src/data/dem_data.js +11 -10
- package/src/data/extent.js +1 -1
- package/src/data/feature_index.js +38 -28
- package/src/data/index_array_type.js +1 -6
- package/src/data/load_geometry.js +6 -9
- package/src/data/pos_attributes.js +2 -3
- package/src/data/program_configuration.js +47 -38
- package/src/data/raster_bounds_attributes.js +2 -2
- package/src/data/segment.js +4 -7
- package/src/geo/coordinate.js +1 -1
- package/src/geo/lng_lat.js +3 -3
- package/src/geo/lng_lat_bounds.js +8 -4
- package/src/geo/transform.js +69 -30
- package/src/gl/color_mode.js +2 -2
- package/src/gl/context.js +28 -29
- package/src/gl/cull_face_mode.js +1 -1
- package/src/gl/depth_mode.js +1 -1
- package/src/gl/framebuffer.js +8 -4
- package/src/gl/index_buffer.js +2 -2
- package/src/gl/stencil_mode.js +1 -1
- package/src/gl/value.js +33 -68
- package/src/gl/vertex_buffer.js +2 -2
- package/src/index.js +49 -25
- package/src/render/draw_background.js +17 -12
- package/src/render/draw_circle.js +15 -12
- package/src/render/draw_collision_debug.js +11 -8
- package/src/render/draw_debug.js +16 -14
- package/src/render/draw_fill.js +27 -20
- package/src/render/draw_fill_extrusion.js +20 -17
- package/src/render/draw_heatmap.js +21 -16
- package/src/render/draw_hillshade.js +12 -9
- package/src/render/draw_line.js +36 -22
- package/src/render/draw_raster.js +22 -18
- package/src/render/draw_symbol.js +38 -33
- package/src/render/glyph_atlas.js +9 -8
- package/src/render/glyph_manager.js +2 -3
- package/src/render/image_atlas.js +4 -11
- package/src/render/image_manager.js +39 -28
- package/src/render/line_atlas.js +2 -2
- package/src/render/painter.js +78 -61
- package/src/render/program/background_program.js +6 -13
- package/src/render/program/circle_program.js +8 -10
- package/src/render/program/clipping_mask_program.js +3 -5
- package/src/render/program/collision_program.js +4 -6
- package/src/render/program/debug_program.js +3 -5
- package/src/render/program/fill_extrusion_program.js +9 -15
- package/src/render/program/fill_program.js +10 -21
- package/src/render/program/heatmap_program.js +9 -15
- package/src/render/program/hillshade_program.js +16 -22
- package/src/render/program/line_program.js +14 -25
- package/src/render/program/pattern.js +5 -7
- package/src/render/program/program_uniforms.js +13 -20
- package/src/render/program/raster_program.js +9 -11
- package/src/render/program/symbol_program.js +5 -7
- package/src/render/program.js +5 -6
- package/src/render/texture.js +1 -1
- package/src/render/tile_mask.js +6 -4
- package/src/render/uniform_binding.js +9 -20
- package/src/render/vertex_array_object.js +5 -3
- package/src/shaders/encode_attribute.js +2 -6
- package/src/shaders/index.js +103 -51
- package/src/source/geojson_source.js +25 -30
- package/src/source/geojson_worker_source.js +46 -74
- package/src/source/geojson_wrapper.js +13 -5
- package/src/source/image_source.js +17 -28
- package/src/source/load_tilejson.js +3 -3
- package/src/source/pixels_to_tile_units.js +3 -3
- package/src/source/query_features.js +17 -15
- package/src/source/raster_dem_tile_source.js +54 -71
- package/src/source/raster_tile_source.js +14 -15
- package/src/source/resources/glyphs.js +4 -5
- package/src/source/resources/index.js +4 -12
- package/src/source/rtl_text_plugin.js +62 -35
- package/src/source/source.js +14 -22
- package/src/source/source_cache.js +221 -179
- package/src/source/source_state.js +125 -13
- package/src/source/tile.js +67 -66
- package/src/source/tile_bounds.js +36 -29
- package/src/source/tile_cache.js +2 -2
- package/src/source/tile_id.js +30 -26
- package/src/source/vector_tile_source.js +23 -21
- package/src/source/vector_tile_worker_source.js +22 -26
- package/src/source/worker_tile.js +139 -134
- package/src/style/create_style_layer.js +11 -11
- package/src/style/evaluation_parameters.js +4 -6
- package/src/style/light.js +5 -5
- package/src/style/load_sprite.js +6 -6
- package/src/style/parse_glyph_pbf.js +21 -17
- package/src/style/pauseable_placement.js +7 -9
- package/src/style/properties.js +21 -51
- package/src/style/query_utils.js +7 -13
- package/src/style/style.js +314 -221
- package/src/style/style_layer/background_style_layer.js +3 -4
- package/src/style/style_layer/background_style_layer_properties.js +2 -2
- package/src/style/style_layer/circle_style_layer.js +25 -20
- package/src/style/style_layer/circle_style_layer_properties.js +2 -2
- package/src/style/style_layer/fill_extrusion_style_layer.js +55 -37
- package/src/style/style_layer/fill_extrusion_style_layer_properties.js +2 -2
- package/src/style/style_layer/fill_style_layer.js +11 -12
- package/src/style/style_layer/fill_style_layer_properties.js +2 -2
- package/src/style/style_layer/heatmap_style_layer.js +6 -7
- package/src/style/style_layer/heatmap_style_layer_properties.js +2 -2
- package/src/style/style_layer/hillshade_style_layer.js +4 -5
- package/src/style/style_layer/hillshade_style_layer_properties.js +2 -2
- package/src/style/style_layer/line_style_layer.js +33 -30
- package/src/style/style_layer/line_style_layer_properties.js +5 -5
- package/src/style/style_layer/raster_style_layer.js +3 -4
- package/src/style/style_layer/raster_style_layer_properties.js +2 -2
- package/src/style/style_layer/symbol_style_layer.js +20 -21
- package/src/style/style_layer/symbol_style_layer_properties.js +2 -2
- package/src/style/style_layer.js +66 -47
- package/src/style/style_layer_index.js +17 -42
- package/src/style/zoom_history.js +1 -1
- package/src/style-spec/error/parsing_error.js +1 -1
- package/src/style-spec/error/validation_error.js +5 -3
- package/src/style-spec/feature_filter/convert.js +17 -9
- package/src/style-spec/feature_filter/index.js +13 -9
- package/src/style-spec/util/eval_support.js +2 -2
- package/src/style-spec/util/ref_properties.js +1 -1
- package/src/symbol/anchor.js +2 -6
- package/src/symbol/check_max_angle.js +13 -5
- package/src/symbol/clip_line.js +2 -3
- package/src/symbol/collision_feature.js +8 -4
- package/src/symbol/collision_index.js +5 -7
- package/src/symbol/cross_tile_symbol_index.js +7 -10
- package/src/symbol/get_anchors.js +15 -8
- package/src/symbol/grid_index.js +5 -3
- package/src/symbol/mergelines.js +2 -2
- package/src/symbol/opacity_state.js +1 -5
- package/src/symbol/placement.js +28 -23
- package/src/symbol/projection.js +29 -28
- package/src/symbol/quads.js +14 -16
- package/src/symbol/shaping.js +27 -19
- package/src/symbol/symbol_layout.js +24 -28
- package/src/symbol/symbol_size.js +13 -12
- package/src/symbol/transform_text.js +4 -4
- package/src/ui/camera.js +34 -18
- package/src/ui/map.js +102 -44
- package/src/util/async.js +11 -5
- package/src/util/browser.js +1 -1
- package/src/util/callback.js +3 -9
- package/src/util/classify_rings.js +13 -8
- package/src/util/color_ramp.js +3 -3
- package/src/util/config.js +4 -4
- package/src/util/dictionary_coder.js +2 -3
- package/src/util/dom.js +7 -3
- package/src/util/find_pole_of_inaccessibility.js +29 -14
- package/src/util/group_layers.js +41 -0
- package/src/util/image.js +3 -13
- package/src/util/interpolate.js +1 -1
- package/src/util/intersection_tests.js +80 -42
- package/src/util/is_char_in_unicode_block.js +1 -1
- package/src/util/key.js +25 -0
- package/src/util/loader/image.js +1 -1
- package/src/util/object.js +33 -76
- package/src/util/script_detection.js +212 -91
- package/src/util/struct_array.js +8 -40
- package/src/util/task_queue.js +11 -7
- package/src/util/throttle.js +2 -2
- package/src/util/tile_cover.js +8 -5
- package/src/util/token.js +1 -1
- package/src/util/unique_id.js +2 -2
- package/src/util/util.js +21 -29
- package/src/util/vectortile_to_geojson.js +4 -2
- package/src/util/verticalize_punctuation.js +3 -7
- package/src/util/warn.js +4 -4
- package/src/util/web_worker.js +3 -3
- package/src/worker.js +1 -4
- package/src/source/resources/images.js +0 -68
- package/src/source/worker.js +0 -110
- package/src/source/worker_source.js +0 -14
- package/src/style-spec/deref.js +0 -51
- package/src/style-spec/group_by_layout.js +0 -46
- package/src/util/actor.js +0 -108
- package/src/util/dispatcher.js +0 -65
- package/src/util/global_worker_pool.js +0 -15
- package/src/util/transfer_registry.js +0 -168
- package/src/util/web_worker_transfer.js +0 -43
- package/src/util/worker_pool.js +0 -41
package/src/style/properties.js
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const { register } = require('../util/transfer_registry');
|
|
7
|
-
const EvaluationParameters = require('./evaluation_parameters');
|
|
1
|
+
import { interpolate, normalizePropertyExpression } from '@mapwhit/style-expressions';
|
|
2
|
+
import assert from 'assert';
|
|
3
|
+
import { clone } from '../util/object.js';
|
|
4
|
+
import { easeCubicInOut } from '../util/util.js';
|
|
5
|
+
import EvaluationParameters from './evaluation_parameters.js';
|
|
8
6
|
|
|
9
7
|
/**
|
|
10
8
|
* Implements a number of classes that define state and behavior for paint and layout properties, most
|
|
@@ -61,7 +59,7 @@ const EvaluationParameters = require('./evaluation_parameters');
|
|
|
61
59
|
*
|
|
62
60
|
* @private
|
|
63
61
|
*/
|
|
64
|
-
class PropertyValue {
|
|
62
|
+
export class PropertyValue {
|
|
65
63
|
constructor(property, value) {
|
|
66
64
|
this.property = property;
|
|
67
65
|
this.value = value;
|
|
@@ -98,7 +96,7 @@ class PropertyValue {
|
|
|
98
96
|
*
|
|
99
97
|
* @private
|
|
100
98
|
*/
|
|
101
|
-
class TransitionablePropertyValue {
|
|
99
|
+
export class TransitionablePropertyValue {
|
|
102
100
|
constructor(property) {
|
|
103
101
|
this.property = property;
|
|
104
102
|
this.value = new PropertyValue(property, undefined);
|
|
@@ -133,7 +131,7 @@ class TransitionablePropertyValue {
|
|
|
133
131
|
*
|
|
134
132
|
* @private
|
|
135
133
|
*/
|
|
136
|
-
class Transitionable {
|
|
134
|
+
export class Transitionable {
|
|
137
135
|
constructor(properties) {
|
|
138
136
|
this._properties = properties;
|
|
139
137
|
this._values = Object.create(properties.defaultTransitionablePropertyValues);
|
|
@@ -210,7 +208,7 @@ class Transitionable {
|
|
|
210
208
|
*
|
|
211
209
|
* @private
|
|
212
210
|
*/
|
|
213
|
-
class TransitioningPropertyValue {
|
|
211
|
+
export class TransitioningPropertyValue {
|
|
214
212
|
constructor(property, value, prior, transition, now) {
|
|
215
213
|
this.property = property;
|
|
216
214
|
this.value = value;
|
|
@@ -265,7 +263,7 @@ class TransitioningPropertyValue {
|
|
|
265
263
|
*
|
|
266
264
|
* @private
|
|
267
265
|
*/
|
|
268
|
-
class Transitioning {
|
|
266
|
+
export class Transitioning {
|
|
269
267
|
constructor(properties) {
|
|
270
268
|
this._properties = properties;
|
|
271
269
|
this._values = Object.create(properties.defaultTransitioningPropertyValues);
|
|
@@ -309,7 +307,7 @@ class Transitioning {
|
|
|
309
307
|
*
|
|
310
308
|
* @private
|
|
311
309
|
*/
|
|
312
|
-
class Layout {
|
|
310
|
+
export class Layout {
|
|
313
311
|
constructor(properties) {
|
|
314
312
|
this._properties = properties;
|
|
315
313
|
this._values = Object.create(properties.defaultPropertyValues);
|
|
@@ -375,7 +373,7 @@ class Layout {
|
|
|
375
373
|
*
|
|
376
374
|
* @private
|
|
377
375
|
*/
|
|
378
|
-
class PossiblyEvaluatedPropertyValue {
|
|
376
|
+
export class PossiblyEvaluatedPropertyValue {
|
|
379
377
|
constructor(property, value, parameters) {
|
|
380
378
|
this.property = property;
|
|
381
379
|
this.value = value;
|
|
@@ -403,15 +401,8 @@ class PossiblyEvaluatedPropertyValue {
|
|
|
403
401
|
* an object type with the same keys, and values of type `R`.
|
|
404
402
|
*
|
|
405
403
|
* For properties that don't allow data-driven values, `R` is a scalar type such as `number`, `string`, or `Color`.
|
|
406
|
-
* For data-driven properties, it is `PossiblyEvaluatedPropertyValue`.
|
|
407
|
-
*
|
|
408
|
-
* to use a `PossiblyEvaluatedPropertyValue` as if it was a scalar, or vice versa, you will get a type error. (However,
|
|
409
|
-
* there's at least one case in which flow fails to produce a type error that you should be aware of: in a context such
|
|
410
|
-
* as `layer.paint.get('foo-opacity') === 0`, if `foo-opacity` is data-driven, than the left-hand side is of type
|
|
411
|
-
* `PossiblyEvaluatedPropertyValue<number>`, but flow will not complain about comparing this to a number using `===`.
|
|
412
|
-
* See https://github.com/facebook/flow/issues/2359.)
|
|
413
|
-
*
|
|
414
|
-
* There's also a third, special case possiblity for `R`: for cross-faded properties, it's `?CrossFaded<T>`.
|
|
404
|
+
* For data-driven properties, it is `PossiblyEvaluatedPropertyValue`.
|
|
405
|
+
* For cross-faded properties, it's `?CrossFaded<T>`.
|
|
415
406
|
*
|
|
416
407
|
* @private
|
|
417
408
|
*/
|
|
@@ -421,7 +412,7 @@ class PossiblyEvaluatedPropertyValue {
|
|
|
421
412
|
* given layer type.
|
|
422
413
|
* @private
|
|
423
414
|
*/
|
|
424
|
-
class PossiblyEvaluated {
|
|
415
|
+
export class PossiblyEvaluated {
|
|
425
416
|
constructor(properties) {
|
|
426
417
|
this._properties = properties;
|
|
427
418
|
this._values = Object.create(properties.defaultPossiblyEvaluatedValues);
|
|
@@ -439,7 +430,7 @@ class PossiblyEvaluated {
|
|
|
439
430
|
*
|
|
440
431
|
* @private
|
|
441
432
|
*/
|
|
442
|
-
class DataConstantProperty {
|
|
433
|
+
export class DataConstantProperty {
|
|
443
434
|
constructor(specification) {
|
|
444
435
|
this.specification = specification;
|
|
445
436
|
this.specification['property-type'] ??= 'data-constant';
|
|
@@ -466,7 +457,7 @@ class DataConstantProperty {
|
|
|
466
457
|
*
|
|
467
458
|
* @private
|
|
468
459
|
*/
|
|
469
|
-
class DataDrivenProperty {
|
|
460
|
+
export class DataDrivenProperty {
|
|
470
461
|
constructor(specification) {
|
|
471
462
|
this.specification = specification;
|
|
472
463
|
this.specification['property-type'] ??= 'data-driven';
|
|
@@ -526,7 +517,7 @@ class DataDrivenProperty {
|
|
|
526
517
|
* @private
|
|
527
518
|
*/
|
|
528
519
|
|
|
529
|
-
class CrossFadedDataDrivenProperty extends DataDrivenProperty {
|
|
520
|
+
export class CrossFadedDataDrivenProperty extends DataDrivenProperty {
|
|
530
521
|
constructor(specification) {
|
|
531
522
|
specification['property-type'] ??= 'cross-faded-data-driven';
|
|
532
523
|
super(specification);
|
|
@@ -586,7 +577,7 @@ class CrossFadedDataDrivenProperty extends DataDrivenProperty {
|
|
|
586
577
|
*
|
|
587
578
|
* @private
|
|
588
579
|
*/
|
|
589
|
-
class CrossFadedProperty {
|
|
580
|
+
export class CrossFadedProperty {
|
|
590
581
|
constructor(specification) {
|
|
591
582
|
this.specification = specification;
|
|
592
583
|
this.specification['property-type'] ??= 'cross-faded';
|
|
@@ -627,7 +618,7 @@ class CrossFadedProperty {
|
|
|
627
618
|
* @private
|
|
628
619
|
*/
|
|
629
620
|
|
|
630
|
-
class ColorRampProperty {
|
|
621
|
+
export class ColorRampProperty {
|
|
631
622
|
constructor(specification) {
|
|
632
623
|
this.specification = specification;
|
|
633
624
|
this.specification['property-type'] ??= 'color-ramp';
|
|
@@ -653,7 +644,7 @@ class ColorRampProperty {
|
|
|
653
644
|
*
|
|
654
645
|
* @private
|
|
655
646
|
*/
|
|
656
|
-
class Properties {
|
|
647
|
+
export class Properties {
|
|
657
648
|
constructor(properties) {
|
|
658
649
|
this.properties = properties;
|
|
659
650
|
this.defaultPropertyValues = {};
|
|
@@ -671,24 +662,3 @@ class Properties {
|
|
|
671
662
|
}
|
|
672
663
|
}
|
|
673
664
|
}
|
|
674
|
-
|
|
675
|
-
register('DataDrivenProperty', DataDrivenProperty);
|
|
676
|
-
register('DataConstantProperty', DataConstantProperty);
|
|
677
|
-
register('CrossFadedDataDrivenProperty', CrossFadedDataDrivenProperty);
|
|
678
|
-
register('CrossFadedProperty', CrossFadedProperty);
|
|
679
|
-
register('ColorRampProperty', ColorRampProperty);
|
|
680
|
-
|
|
681
|
-
module.exports = {
|
|
682
|
-
PropertyValue,
|
|
683
|
-
Transitionable,
|
|
684
|
-
Transitioning,
|
|
685
|
-
Layout,
|
|
686
|
-
PossiblyEvaluatedPropertyValue,
|
|
687
|
-
PossiblyEvaluated,
|
|
688
|
-
DataConstantProperty,
|
|
689
|
-
DataDrivenProperty,
|
|
690
|
-
CrossFadedDataDrivenProperty,
|
|
691
|
-
CrossFadedProperty,
|
|
692
|
-
ColorRampProperty,
|
|
693
|
-
Properties
|
|
694
|
-
};
|
package/src/style/query_utils.js
CHANGED
|
@@ -1,13 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
import Point from '@mapbox/point-geometry';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
translateDistance,
|
|
6
|
-
translate
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
function getMaximumPaintValue(property, layer, bucket) {
|
|
10
|
-
const value = layer.paint.get(property).value;
|
|
3
|
+
export function getMaximumPaintValue(property, layer, bucket) {
|
|
4
|
+
const value = layer._paint.get(property).value;
|
|
11
5
|
if (value.kind === 'constant') {
|
|
12
6
|
return value.value;
|
|
13
7
|
}
|
|
@@ -15,16 +9,16 @@ function getMaximumPaintValue(property, layer, bucket) {
|
|
|
15
9
|
return binders[property].maxValue;
|
|
16
10
|
}
|
|
17
11
|
|
|
18
|
-
function translateDistance(translate) {
|
|
12
|
+
export function translateDistance(translate) {
|
|
19
13
|
return Math.sqrt(translate[0] * translate[0] + translate[1] * translate[1]);
|
|
20
14
|
}
|
|
21
15
|
|
|
22
|
-
function translate(queryGeometry, translate, translateAnchor, bearing, pixelsToTileUnits) {
|
|
16
|
+
export function translate(queryGeometry, translate, translateAnchor, bearing, pixelsToTileUnits) {
|
|
23
17
|
if (!translate[0] && !translate[1]) {
|
|
24
18
|
return queryGeometry;
|
|
25
19
|
}
|
|
26
20
|
|
|
27
|
-
const pt = Point.convert(translate);
|
|
21
|
+
const pt = Point.convert(translate)._mult(pixelsToTileUnits);
|
|
28
22
|
|
|
29
23
|
if (translateAnchor === 'viewport') {
|
|
30
24
|
pt._rotate(-bearing);
|
|
@@ -33,7 +27,7 @@ function translate(queryGeometry, translate, translateAnchor, bearing, pixelsToT
|
|
|
33
27
|
const translated = [];
|
|
34
28
|
for (let i = 0; i < queryGeometry.length; i++) {
|
|
35
29
|
const point = queryGeometry[i];
|
|
36
|
-
translated.push(point.sub(pt
|
|
30
|
+
translated.push(point.sub(pt));
|
|
37
31
|
}
|
|
38
32
|
return translated;
|
|
39
33
|
}
|