Commit Graph

69 Commits

Author SHA1 Message Date
ahocevar
2e88ca6905 Use other edge and outside coordinates
This avoids a failing test due to anti-aliasing artifacts in Safari.
2013-04-23 12:40:15 +02:00
fredj
420a6f4dd2 Move SVG2 renderer to deprecated.js 2012-03-14 09:17:42 +01:00
ahocevar
7693c2480d Merge pull request #296 from ajkopinga/canvas-edge-hit2
added hit detection for symbol edges to canvas renderer with unit tests
2012-03-12 06:12:57 -07:00
ahocevar
636ac640ca Don't test VML if SVG is also supported.
The VML renderer does not work in IE9 standards mode, and SVG takes precedence over VML. So it is safe to skip these tests if both VML and SVG report "supported". See #285
2012-03-08 16:27:51 +01:00
Arjen Kopinga
677659df96 broadening stroke width in symbol edge hit detection test to lessen sensitivity to browser antialiasing differences 2012-03-06 15:27:26 +01:00
Arjen Kopinga
a836224a14 added hit detection for symbol edges to canvas renderer with unit tests
Added unit tests for hit detection on invisible canvas layer

simplified unit test for hit detection on invisible canvas
2012-03-06 14:12:53 +01:00
ahocevar
d7533096e9 Fixing Renderer/SVG.html tests for IE9 (see #277). 2012-03-05 12:00:18 +01:00
Arjen Kopinga
d4a9f60c93 simplified unit test for hit detection on invisible canvas 2012-02-28 10:43:11 +01:00
unknown
f8189f2862 Added unit tests for hit detection on invisible canvas layer 2012-02-28 10:43:11 +01:00
ahocevar
cfe25feecf Making dateline handling work with ratio. 2011-12-28 20:14:39 +01:00
fredj
dc991e6f85 Remove Geometry.Surface 2011-11-28 12:41:47 +01:00
tschaub
cb74ede41b Handle features without bounds.
Updates to tests to work with new wrap dateline code.  Canvas renderer needs to handle geometries without bounds as well.
2011-10-11 14:48:10 -06:00
ahocevar
b56af5a5cf Tests for setExtent; improved comments. 2011-10-08 14:34:59 -04:00
Frédéric Junod
0b8a98d9a6 handle features with null bounds in OpenLayers.Renderer.Canvas.drawFeature. p=arublev,me r=erilem (closes #3442)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@12205 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-08-03 15:47:06 +00:00
ahocevar
6ef5e395d1 don't waste coordinate space by using a smaller renderer extent and updating it on moveend. r=bartvde (closes #3359)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@12163 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-07-11 17:07:15 +00:00
Bruno Binet
c0112c9bc6 fix regression introduced in [11881]: redraw is needed for unrendered features to be properly cleared. r=erilem (closes #3224)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11949 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-05-04 12:08:25 +00:00
Éric Lemoine
81342b4b1f the canvas renderer may mess up when rendering external graphics, r=erilem (closes #3264)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11899 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-04-21 07:55:19 +00:00
Tim Schaub
d711e36ed6 Making it so the Canvas renderer does not draw features with display "none" or those with geometries outside the renderer extent. p=me,ahocevar r=erilem (closes #3224)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11881 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-04-06 15:35:24 +00:00
ahocevar
0527f120a8 Removing unused variables and function. Non-functional change.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11866 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-04-04 07:58:13 +00:00
Tim Schaub
cf311ee532 Making the canvas renderer keep track of a pending redraw. With this change we properly redraw even if the last feature in a batch has no geometry. p=me,ahocevar r=ahocevar (closes #3225)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11860 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-04-03 05:04:17 +00:00
Tim Schaub
7e60535fe7 Cleaning up from the canvas tests.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11856 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-04-01 21:37:06 +00:00
Tim Schaub
3ef0b05949 Adding in support for hit detection with canvas (and rendering holes in polygons). r=fredj (closes #3207)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11849 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-03-31 21:00:03 +00:00
ahocevar
e3d137754c New SVG2 renderer for increased performance and smaller library size. Not enabled by default. To use, include 'SVG2' in the renderers array of your OpenLayers.Layer.Vector instance. r=crschmidt (closes #2802)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11616 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-03-05 21:17:02 +00:00
pgiraud
f84f696e31 Adds the possibility to use a built version of OpenLayers for the tests, users simply have to add '?mode=build' in the run-tests.html url
git-svn-id: http://svn.openlayers.org/trunk/openlayers@11162 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2011-02-21 10:10:25 +00:00
ahocevar
fe6047859f Always copy graphicName symbols, because there were too many issues with use/defs. Ctrl-Click and Shift-Click now works as expected on graphicName symbols. p=marcjansen, r=me (closes #2985)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10976 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-12-29 12:06:46 +00:00
Frédéric Junod
7fd84b613d avoid double redraw when panning/zooming. p=tsauerwein,r=erilem (closes #2801)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10863 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-10-28 06:44:35 +00:00
ahocevar
1b44b82908 Make sure that the background node is removed when redrawing with a different symbolizer. Thanks ahtih for this excellent debut patch. p=ahtih, r=me (closes #2891)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10851 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-10-20 14:01:36 +00:00
ahocevar
12d3c86eb4 Avoid VML rendering issues with zero area inner rings. We don't actually do an expensive area calculation, but just make sure that we have at least three distinct points. This version is slightly different from Tim's previous patch: it compares the VML path components rathter than the geometry components, which is less expensive and more reliable (because the VML path uses integers). p=tschaub,me r=me (closes #2876)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10837 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-10-15 13:47:35 +00:00
Frédéric Junod
d895af91a5 fix SVG tests in webkit
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10428 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-06-28 08:33:15 +00:00
ahocevar
7632e54a4d fixed rotation center for non-square symbols in non-defs mode (Webkit). r=bartvde (closes #2499)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10136 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-03-20 21:50:39 +00:00
ahocevar
e17dc78e1d now that we truncate instead of rounding, graphics with odd width are shifted .5 pixels to the left (to the right before that change).
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10061 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-02-13 17:31:13 +00:00
ahocevar
6811dc3745 Fix initial offset and visibility issues in VML renderer; also make sure that all floats are converted to integers (previously using toFixed(), now using (num | 0)). p=tschaub,me, r=tschaub,me (closes #2465)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10039 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-02-10 07:04:31 +00:00
ahocevar
ec455e81e1 fixed typo that broke fontColor rendering in VML.js. Thanks paco for spotting this. r=fredj (closes #2231)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@10011 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-02-03 14:43:19 +00:00
Frédéric Junod
9911bb55ce fix tests for buggy webkit. (see #2402)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@9946 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2010-01-13 10:00:46 +00:00
ahocevar
93eccfc003 Fix for rendering custom symbols with aspect ratio differnt than 1.
r=pgiraud (closes #1836)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@9665 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-09-14 10:25:54 +00:00
ahocevar
77ea74cc2c added getBounds() to mockup geometry. Non-functional change.
git-svn-id: http://svn.openlayers.org/trunk/openlayers@9601 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-07-30 22:27:23 +00:00
Tim Schaub
7b90863198 Instead of storing the geometry on all nodes (increasing memory drain) we only store what the indexer needs. The bounds bottom is only used in the compare method when checking for z and y ordering. r=ahocevar (closes #2198)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@9590 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-07-27 16:50:33 +00:00
ahocevar
fd299eb552 Fixed refreshing of features in VML renderers when moving renderer roots
(e.g. by deactivating the SelectFeature control). Thanks Kris Geusebroek 
for reporting this. r=elemoine (closes #2048)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@9301 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-04-16 06:59:19 +00:00
ahocevar
cc2e19d789 added support for text labels. This also adds getCentroid methods to all
geometries. Thanks crschmidt for the great help with this patch, and 
thanks to camptocamp for the initial work on this and rcoup for creating 
the first patches. r=crschmidt (closes #1895)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@9262 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-04-10 16:05:26 +00:00
ahocevar
2b1e8641f9 SelectFeature control can now select across multiple vector
layers when passed an array of layers instead of a single layer with 
the constructor. This changeset also introduces a new layer type, 
Layer.Vector.RootContainer, which will be set as the topmost layer by 
the SelectFeature control and collect the svg/vml/canvas roots of 
multiple vector layers. r=crschmidt (closes #1666)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@9116 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2009-03-22 14:25:18 +00:00
Tim Schaub
f9c814a34a Named mark definitions need to be stored on each renderer root. This change gives each defs node a unique id based on the renderer id. r=ahocevar (closes #1849)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@8459 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-12-06 20:50:50 +00:00
ahocevar
658953b130 Fixed fatal typo that broke getComponentString when working with two-point geometries. Added tests to check that everything works as expected now. r=pagameba (pullup #1730)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@8016 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-09-15 11:51:50 +00:00
ahocevar
48221f6d26 give the element a backgroundGraphic so we know that we need to remove the background element
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7997 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-09-11 13:11:09 +00:00
ahocevar
d046680c65 the renderer also needs a nodeTypeCompare method
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7954 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-09-04 21:12:09 +00:00
ahocevar
c12cb25aee New vector rendering for better performance and less renderer specific limitations. r=elemoine (closes #1675, closes #1656, closes #1631, closes #1431, closes #1709)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7930 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-09-02 17:17:52 +00:00
ahocevar
9d1bcce4e5 Let's take care that background graphic nodes of features with backgroundGraphic style get removed properly when the style is changed to display: "none".
This solves the backgroundGraphic issue of #1709, the remaining issue with externalGraphic will be fixed by #1675.

Thanks jstern81 for the patch, and I am truly impressed by jstern81 finding the right spot in the codebase that needs to be fixed -- as an OpenLayers newcomer.

Tests added by myself. r=me. (references #1709)

git-svn-id: http://svn.openlayers.org/trunk/openlayers@7919 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-09-01 21:46:26 +00:00
crschmidt
68f70f750b Add support for a Canvas renderer. This renderer will allow for some new
capabilties in OpenLayers Vector drawing, including: 
 * Vector support for iPhone, Safari 2.x series browsers
 * Improved performance of dragging the map with a large number of 
   geometries.

The Vector layer default renderer order is now SVG, VML, Canvas, so browsers
with Canvas support and no SVG or VML will be able to draw vectors.

The Canvas layer has a number of limitations: getFeatureFromEvent is much
slower than the other types of layer, and any change to any feature requires a
redraw of the entire canvas. Because Canvas is typically a pretty fast 
drawing implementation, the latter is less problematic than it might otherwise
be.

r=pagameba,fred, with glances from a couple other people.
(Closes #1512)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@7862 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-26 14:22:59 +00:00
ahocevar
52a5173326 forgot to commit modified tests (references #1679)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7783 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-18 13:20:01 +00:00
ahocevar
73eb0d5745 use t.eq instead of t.ok when comparing values
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7771 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-16 10:52:01 +00:00
Éric Lemoine
3791712a10 maxZIndex becomes NULL when the last feature is removed, p=pvalsecc, r=me (closes #1670)
git-svn-id: http://svn.openlayers.org/trunk/openlayers@7712 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
2008-08-08 12:23:59 +00:00