Commit Graph

13743 Commits

Author SHA1 Message Date
Tim Schaub
641bd7af33 Use Object.values 2022-07-27 15:03:47 -06:00
Tim Schaub
44289a3a31 Remove workaround for Array.prototype.includes 2022-07-27 11:17:49 -06:00
Maximilian Krög
2897f03ea5 Remove deprecated method PluggableMap#forEachLayerAtPixel 2022-07-26 00:57:21 +02:00
MoonE
0f8de89318 Merge pull request #13838 from MoonE/remove-deprecated-overlay-options
Remove deprecated Overlay options
2022-07-22 21:43:48 +02:00
Olivier Guyot
7d56c56210 Merge pull request #13461 from jahow/webgl-shape-renderer
WebGL vector renderer for polygons, lines and points
2022-07-22 10:05:31 +02:00
Andreas Hocevar
e83ecdeb96 Merge pull request #13863 from ahocevar/tile-error-handling
Fix reloading tiles in case of an error with tile.load()
2022-07-22 00:43:37 +02:00
Andreas Hocevar
02c73e3e69 Merge pull request #13860 from ahocevar/geojson-empty-coordinate-arrays
Handle multipolygons with empty polygons
2022-07-22 00:25:40 +02:00
Andreas Hocevar
a1d68b4f66 Fix reloading tiles in case of an error with tile.load() 2022-07-21 23:23:40 +02:00
Tim Schaub
01f3536d29 Using a union type instead of a string enum 2022-07-21 14:08:16 -07:00
Tim Schaub
7e424be66b Only pass the feature to the attribute getter 2022-07-21 13:49:06 -07:00
Tim Schaub
bd9e73a534 Renaming fill and stroke attributes and shaders 2022-07-21 13:30:22 -07:00
Tim Schaub
f21dd84c91 Remove api annotation for experimental features 2022-07-21 13:08:18 -07:00
Tim Schaub
5182b16452 Private if not used elsewhere; underscore suffix only if private 2022-07-21 13:03:10 -07:00
Maximilian Krög
e3766222f3 Remove deprecated Overlay options 2022-07-20 21:40:48 +02:00
Andreas Hocevar
c8508bcf97 Handle multipolygons with empty polygons 2022-07-20 13:18:41 +02:00
Maximilian Krög
62e335ceda Replace IconOrigin enum with typedef 2022-07-19 23:24:25 +02:00
Maximilian Krög
7ec2725c1e Replace IconAnchorUnits enum with typedef 2022-07-19 23:24:25 +02:00
Maximilian Krög
48e57f4d8c Replace Zoomify TierSizeCalculation enum with typedef 2022-07-19 23:24:25 +02:00
Maximilian Krög
7004d18519 Replace Draw Mode enum with typedef 2022-07-19 23:24:25 +02:00
Maximilian Krög
185485b0f7 Replace GeometryLayout enum with typedef 2022-07-19 23:24:22 +02:00
Maximilian Krög
ac6edc704a Replace ScaleLine Units with typedef 2022-07-19 22:56:46 +02:00
Maximilian Krög
69caa06783 Replace TextPlacement enum with typedef 2022-07-19 22:56:45 +02:00
Maximilian Krög
4d2156ff3a Replace IGCZ enum with typedef 2022-07-19 22:56:45 +02:00
MoonE
d20690394c Merge pull request #13837 from MoonE/remove-label-cache
Remove deprecated label cache
2022-07-19 20:58:17 +02:00
Andreas Hocevar
69ae6c85cf Merge pull request #13835 from ahocevar/source-state
Recover from incorrect rebase after removal of string enums
2022-07-18 22:42:58 +02:00
Andreas Hocevar
085fca6a9f Merge pull request #13832 from mike-000/vector-tile-grids
Base vector tile render tile grid on the source grid
2022-07-18 10:07:52 +02:00
Andreas Hocevar
4fec8d4615 Recover from incorrect rebase after removal of string enums 2022-07-18 09:42:52 +02:00
Maximilian Krög
1df5afcdbf Remove deprecated label cache 2022-07-17 04:15:24 +02:00
Maximilian Krög
d957bdeb86 Fix ScaleLine markup 2022-07-16 18:56:59 +02:00
jeanpierre
c8a28848dd change class names 2022-07-16 16:57:14 +02:00
jeanpierre
4d2b2c9650 style for scalebar
with new class in css and remove the hardcoded background

Co-Authored-By: Andreas Hocevar <211514+ahocevar@users.noreply.github.com>
2022-07-16 15:53:27 +02:00
jipexu
cb5417e0b6 Merge branch 'openlayers:main' into scalebarcolors 2022-07-16 11:22:01 +02:00
mike-000
13f0eeb795 Fix tileSizes typedef 2022-07-16 10:07:54 +01:00
mike-000
8dcb78bcd9 Base render tile grid on the source grid
Use source zDirection for both grids
2022-07-16 10:06:42 +01:00
Olivier Guyot
998dc82592 fixes after rebase 2022-07-15 22:53:48 +02:00
Olivier Guyot
cd83424867 WebGL / improve doc for Helper and VectorLayerRenderer
Also created enums for attributes (like uniforms), in an attempt to clarify
what is accessible to the vertex shaders.
2022-07-15 22:33:52 +02:00
Olivier Guyot
52279967c4 WebGL / Reorganize VectorLayerRenderer options, update example
Now different attributes can be provided for each type of geometry.

Also updated the example to accomodate for this and use the default shaders.
2022-07-15 22:33:52 +02:00
Olivier Guyot
79c974d63d WebGL / Add new module with default shaders for VectorLayer 2022-07-15 22:33:52 +02:00
Olivier Guyot
6848df97f8 WebGL / Address review comments 2022-07-15 22:33:52 +02:00
Olivier Guyot
f603ce7456 WebGL / Support DPR > 1 in linestring shader
A u_pixelRatio uniform was added to be used in the shaders. this is necessary
since we're relying on the builtin gl_FragCoord vector, which will be scaled
relative to the u_sizePx uniform in case of a device pixel ratio != 1.

Also added tests for computed uniform values, instead of just testing
that they were indeed set.
2022-07-15 22:33:52 +02:00
Olivier Guyot
9e35acaa0a Adapt the batch renderers to trigger a repaint after buffer rebuild 2022-07-15 22:33:52 +02:00
burleight
8769ea519e WebGL / render multiple worlds to wrap X in vector renderer
From https://github.com/jahow/openlayers/pull/1

Adds logic in WebGLVectorLayerRenderer to handle multiple worlds visible at once.

Co-authored-by: Tomas Burleigh <t.burleigh@gmail.com>
Co-authored-by: Olivier Guyot <olivier.guyot@camptocamp.com>
2022-07-15 22:33:52 +02:00
Olivier Guyot
c9f3665237 Remove @api on webgl vector layer renderer as well as utilities
This removes the WebGL vector layer renderer as well as the WebGL helper class
from the API.
2022-07-15 22:33:52 +02:00
Olivier Guyot
7e9c620914 Fix linting and typechecking errors 2022-07-15 22:33:52 +02:00
Olivier Guyot
a2ba7ecaa7 Make some adaptations to the PointsLayer renderer to make it work 2022-07-15 22:33:52 +02:00
Olivier Guyot
c555315014 Add a new WebGLVectorLayer renderer
This relies on a mixed geometry batch and separate batch renderers (lines,
points and polygons). A different shader program is used for each of these
geometries, and three rendering passes are made.
2022-07-15 22:33:52 +02:00
Olivier Guyot
cfaf9a14e5 Rework a bit the webgl helper to allow having several programs
Without this, doing render passes with different programs using one
helper instance was not really doable
2022-07-15 22:33:52 +02:00
Olivier Guyot
7892c31715 Adapt the WebGL worker to use the new buffer generation utils 2022-07-15 22:33:52 +02:00
Olivier Guyot
143c19ca03 Add utils for generating webgl buffers from lines and polygons
Uses @mapbox/earcut for polygon (what else), and a home made logic for lines
2022-07-15 22:33:52 +02:00
Olivier Guyot
a18ffaed54 Move webgl utils out of ol/renderer/webgl/Layer module into their own module 2022-07-15 22:33:52 +02:00