Commit Graph

4150 Commits

Author SHA1 Message Date
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 aff4451fb1 Merge pull request #13823 from ahocevar/reduce-canvas-footprint
Reduce canvas memory footprint for better iOS stability
2022-07-15 20:35:09 +02:00
Andreas Hocevar 96e2400c46 Fix alignment of rotated image layers 2022-07-15 20:30:38 +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
Andreas Hocevar f3a05ba82d Use device instead of data pixel ratio to determine canvas size 2022-07-10 23:06:41 +02:00
Andreas Hocevar 6086459cba Handle opacity on canvas instead of dom 2022-07-10 23:06:40 +02:00
Tim Schaub ebeef238e3 Merge pull request #13747 from theduckylittle/feature/add-setters-to-shape-styles
Add setFill and setStroke to Shapes
2022-07-02 16:16:03 -06:00
mike-000 4271dcc5b5 Include displacement and declutterMode in clone 2022-06-30 23:08:37 +01:00
Duck bd620bdf93 Add rendering test for the setFill/setStroke 2022-06-23 06:39:05 -07: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
Andreas Hocevar d530435e2e Merge pull request #13724 from m-mohr/geotiff-from-blob
Load GeoTiff from Blob #13189 #13703
2022-06-08 16:03:13 +02:00
Andreas Hocevar 78e7f378fe Merge pull request #12106 from IQGeo/issue-12101
improve text width calculation
2022-06-08 15:39:29 +02: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
Luis Camacho 4773595748 added tests for drawTextOnPath multi-line text handling 2022-05-25 14:34:32 +01: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
Maximilian Krög 302a9d51e1 Fix WebGLTile browser tests
The loader has to return a TypedArray, not ImageData
2022-05-15 22:30:40 +02:00
Maximilian Krög 744324859e Fix font rerender test when font is a system font 2022-05-15 22:30:40 +02:00
Maximilian Krög 72d61f887d Use document.head instead of getElementByTagName 2022-05-15 21:34:26 +02:00
Tim Schaub 25b2007636 Handle NaN nodata 2022-05-12 11:31:08 -06:00
Tim Schaub a5c2c8d3d4 Merge pull request #13648 from tschaub/data-tile-size
Explicit data tile size
2022-05-07 10:16:40 -06:00
Tim Schaub 38b48bd341 Explicit data tile size 2022-05-06 14:47:10 -06:00