Commit Graph

575 Commits

Author SHA1 Message Date
GaborFarkas
a0089b5126 Correctly triangulate bad polygons. 2016-11-23 09:51:36 +01:00
GaborFarkas
657f2c7b6c Optimize processing flat coordinates 2016-11-23 09:51:36 +01:00
GaborFarkas
5d65028d26 Initial ear clipping algorithm 2016-11-23 09:51:33 +01:00
GaborFarkas
88f7e7a38d Utilities for polygon renderer 2016-11-23 09:49:48 +01:00
GaborFarkas
18bc820f8b Prevent overdraw in PolygonReplay. 2016-11-23 09:49:48 +01:00
GaborFarkas
4b2fb38954 Fix preparation of multipolygons with holes. 2016-11-23 09:49:48 +01:00
GaborFarkas
226bf5a9ea Allow empty fillStyle for polygons. 2016-11-23 09:49:48 +01:00
GaborFarkas
16a50ee0c7 Extend PolygonReplay with hit detection and skipping. 2016-11-23 09:49:48 +01:00
GaborFarkas
ce3b286cd3 RTE correct only once. 2016-11-23 09:49:48 +01:00
GaborFarkas
112fae228a Sanity check fill colors. 2016-11-23 09:49:48 +01:00
GaborFarkas
18cf6c30bd Add basic polygon renderer. 2016-11-23 09:49:48 +01:00
GaborFarkas
638b7752fa Fix bugs in LineStringReplay. 2016-11-23 09:49:47 +01:00
GaborFarkas
f96a4a7301 Properly handle zeros in stroke style. 2016-11-23 09:49:47 +01:00
GaborFarkas
1c7203a203 Add skipping capability to LineStringReplay 2016-11-23 09:49:47 +01:00
GaborFarkas
48d3bfe297 Take line width into account when forming miters. 2016-11-23 09:49:47 +01:00
GaborFarkas
16dfc5dfba Adjust replays to new version. 2016-11-23 09:49:47 +01:00
GaborFarkas
2415050500 Add hit detection support to LineStringReplay
Also, making it more consistent with ImageReplay
2016-11-23 09:49:47 +01:00
GaborFarkas
b7396b0b94 Improve code quality
Cleaning up, making the code more consistent, and restructuring commonly used methods.
2016-11-23 09:49:47 +01:00
GaborFarkas
3897312af6 Add full support to different styles in one layer. 2016-11-23 09:49:47 +01:00
GaborFarkas
4d8777220a Fix compiler and compiled lib related problems. 2016-11-23 09:49:47 +01:00
GaborFarkas
b0d11391b2 Fix rounding problems
Fragment shader does not know about the projection matrix, thus it has to take the pixel ratio into account.
2016-11-23 09:49:47 +01:00
GaborFarkas
249084dcd4 Eliminate overdraw with a nice little trick 2016-11-23 09:49:47 +01:00
GaborFarkas
c9c970303f Handling sharp angles in linestring GLSL 2016-11-23 09:49:47 +01:00
GaborFarkas
3f828248b9 Rework isClosed with added tests 2016-11-23 09:49:47 +01:00
GaborFarkas
e64549c50c Fix weird behaviour of boundaries
With drawElements, it seems like we cannot connect an old index with a much fresher one, as it will produce weird errors.
2016-11-23 09:49:47 +01:00
GaborFarkas
4be8de62ae Refactor linestring geom validation
Now it only focuses on issues not addressed by ol.geom.flat.simplify methods.
2016-11-23 09:49:47 +01:00
GaborFarkas
f15a9652d8 Fix rendering of boundaries. 2016-11-23 09:49:47 +01:00
GaborFarkas
eba006b796 Falling back to bevel when exceeding miterLimit 2016-11-23 09:49:47 +01:00
GaborFarkas
8c561a45b9 Inspect linestring validity before drawing 2016-11-23 09:49:46 +01:00
GaborFarkas
99e4009b19 Minor improvements
ol.render.webgl.LineStringReplay.startIndices_ is initialized with a 0, and the end index of a valid line is added in every valid iteration.

drawElements_ is refactored for a clearer code.
2016-11-23 09:49:46 +01:00
GaborFarkas
e2ec6d0b82 Adding support for closed lines 2016-11-23 09:49:46 +01:00
GaborFarkas
0f8e1a7e40 Refactoring ol.render.webgl.LineStringReplay 2016-11-23 09:49:46 +01:00
GaborFarkas
c13d09ba23 Handle case of one segment lines with identical coordinates + quality improvements 2016-11-23 09:49:46 +01:00
GaborFarkas
fb71860a03 Adding linestring cap support 2016-11-23 09:49:46 +01:00
GaborFarkas
350d1add81 Change goog.base to call, and goog.inherits to ol.inherits 2016-11-23 09:49:46 +01:00
GaborFarkas
0972988bdb Properly triangulate linestrings 2016-11-23 09:49:46 +01:00
GaborFarkas
c7edd21cc3 Extend linestring renderer with GLSL and indexed geometries. 2016-11-23 09:49:46 +01:00
GaborFarkas
caeb8e4820 Eliminating jitter by restructuring 2016-11-23 09:49:46 +01:00
GaborFarkas
6e958514ee Taking line width into account 2016-11-23 09:49:46 +01:00
GaborFarkas
628db9146d Creating a webgl.Replay struct, making the WebGL LineString renderer compilable 2016-11-23 09:49:46 +01:00
GaborFarkas
f5978c659c Adding some defaults 2016-11-23 09:49:46 +01:00
GaborFarkas
a6ddee0c5f Updating old code to current ol3 version 2016-11-23 09:49:46 +01:00
GaborFarkas
a052b645df Fix dependencies 2016-11-23 09:49:46 +01:00
Guillaume Beraudo
e40b545e40 Add basic WEBGL LineString rendering
Use gl.LINES and hardcode a width.
Implement polygon stroking using the line string replay.
2016-11-23 09:49:46 +01:00
Guillaume Beraudo
581ea8c775 Add color to WEBGL polygons 2016-11-23 09:49:46 +01:00
Guillaume Beraudo
2519cf36fc Basic WEBGL rendering of polygons 2016-11-23 09:49:46 +01:00
greenkeeperio-bot
71ebed07bf chore(package): update eslint to version 3.9.1
https://greenkeeper.io/
2016-11-01 11:51:06 +01:00
Andreas Hocevar
aa7e54833d Do not fill when there is no fillStyle 2016-10-28 10:34:27 +02:00
Andreas Hocevar
a2a2a53e08 Use geometry extent's top left corner as pattern/gradient origin 2016-10-27 21:27:17 +02:00
Andreas Hocevar
fdae2e8e00 Set one-off transform instead of transforming back and forth 2016-10-14 17:54:21 +02:00