Commit Graph

213 Commits

Author SHA1 Message Date
Tim Schaub
641bd7af33 Use Object.values 2022-07-27 15:03:47 -06:00
Maximilian Krög
2897f03ea5 Remove deprecated method PluggableMap#forEachLayerAtPixel 2022-07-26 00:57:21 +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
a1d68b4f66 Fix reloading tiles in case of an error with tile.load() 2022-07-21 23:23:40 +02:00
Tim Schaub
7e424be66b Only pass the feature to the attribute getter 2022-07-21 13:49:06 -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
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
185485b0f7 Replace GeometryLayout enum with typedef 2022-07-19 23:24:22 +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
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
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
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
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
Olivier Guyot
eb0db9e3df Introduce batch renderers for each type of geometry
Batch renderers are responsible for generating render instructions and
interacting with the worker to obtain the final webgl buffers
2022-07-15 22:33:52 +02:00
Olivier Guyot
b5fbed5437 Introduce MixedGeometryBatch for webgl rendering
This class keeps an up-to-date list of line, polygon and point geometries
to render as well as vertices counts, geometries count, rings count etc.
2022-07-15 22:33:52 +02:00
Andreas Hocevar
884c0c6129 Resolve conflicts 2022-07-15 10:51:08 +02:00
Tim Schaub
9a6f8493fb Use union instead of enum for geometry type 2022-07-15 10:48:37 +02:00
Tim Schaub
04ad0e0c5a Additional uses of new source state type 2022-07-15 10:46:44 +02:00
mike-000
4271dcc5b5 Include displacement and declutterMode in clone 2022-06-30 23:08:37 +01:00
Andreas Hocevar
6dcc583e06 Add tests to ensure correct pointer tracking 2022-06-16 14:36:17 +02:00
Andreas Hocevar
04ffcbfd08 Fix source band calculation when configured with multiple sources 2022-06-13 14:35:16 +02:00
Andreas Hocevar
9b6f94e194 Merge pull request #13745 from hargasinski/fix-modifying-polygons
Fix modifying polygons with overlapping vertices
2022-06-12 13:44:15 +02:00
Andreas Hocevar
0f1f3e70a7 Merge pull request #13749 from ahocevar/gml-polygon-ring-curve
Support GML polygons with ring curves instead of linear rings
2022-06-12 13:35:41 +02:00
Andreas Hocevar
e863960599 Support reading polygons with curve rings 2022-06-10 18:17:26 +02:00
Andreas Hocevar
2a8cc3d2f5 Map multiple LineStringSegments to a one LineString 2022-06-10 18:17:02 +02:00
Hubert Argasinski
5bcbd23cca Fix modifying polygons with overlapping vertices
When a polygonal geometry, where one of the vertices overlaps the first
vertex in the same ring, is modified, ensure the correct vertices are
updated.
2022-06-08 18:36:49 -04:00
Matthias Mohr
c2fc1f85bf Load GeoTiff from Blob #13189 #13703 2022-06-01 23:49:01 +02:00
mike-000
bbfcf42daf Test tile pyramid getData() 2022-05-28 11:56:26 +01:00
Maximilian Krög
6b3c9cc196 Test hitdetect icon with offset 2022-05-25 22:33:57 +02:00
Maximilian Krög
f5bdc982b5 Improve test coverage for icon clone method 2022-05-25 22:33:54 +02:00
Maximilian Krög
e8925a90e5 Test VectorTile layer not ready while loading needed icons 2022-05-24 22:26:17 +02:00
Maximilian Krög
11589f3317 Test rendercomplete with icon for VectorTile 2022-05-24 22:18:36 +02:00
Maximilian Krög
dc128820c1 Test rendercomplete waits for icon load 2022-05-24 21:47:08 +02:00
Andreas Hocevar
a16aef042d Merge pull request #13691 from burleight/vectorSource-getFeaturesInExtent-wrapX
#13690 VectorSource#getFeaturesInExtent add projection parameter
2022-05-24 09:37:10 +02:00
Andreas Hocevar
d9fdc4f0bf Merge pull request #13688 from ahocevar/wmts-flip-x
Flip extent coordinates for projections with ne* axis order
2022-05-22 15:52:19 +02:00
Tim Schaub
cf7daf36d6 Include layer visibility in the URL 2022-05-21 10:50:45 -06:00
Tim Schaub
6690dc99dd Link interaction 2022-05-21 10:50:38 -06:00
Tomas Burleigh
78274befb8 #13690 VectorSource#getFeaturesInExtent add projection parameter 2022-05-21 14:28:19 +12:00
Andreas Hocevar
aa190a629a Flip extent coordinates for projections with ne* axis order 2022-05-20 19:38:55 +02:00
Maximilian Krög
ecf90a49c8 Improve browser tests
- Listen for image change event instead of waiting 200 ms
- Properly fake fetch response, can never be undefined on resolve
2022-05-15 22:30:40 +02:00