Commit Graph

90 Commits

Author SHA1 Message Date
Tom Payne
0bf34a52ff Add ol.geom.MultiLineString#setLineStrings 2013-12-20 16:33:26 +01:00
Tom Payne
b179a27ade Rename ol.geom.simplify.schaub to quantize 2013-12-13 20:51:54 +01:00
Tom Payne
594cee01e4 Use Schaub's topology-preserving simplification method for Polygons and MultiPolygons 2013-12-13 13:59:29 +01:00
Tom Payne
5b1bbe15dd Add ol.geom.simplify.schaub 2013-12-13 13:59:29 +01:00
Tom Payne
ccf96ea415 Fix ol.geom.GeometryCollection test 2013-12-12 11:30:33 +01:00
Tom Payne
dd3c39bb12 Add deep clone test 2013-12-11 22:05:33 +01:00
Tom Payne
d7eb4db69e Add ol.geom.GeometryCollection 2013-12-11 16:49:47 +01:00
Tom Payne
74bf8a7ecb Add ol.geom.closest 2013-12-09 16:40:53 +01:00
Tom Payne
b374d5c5b8 Avoid simplifying geometries when it will have no effect 2013-12-09 16:37:33 +01:00
Tom Payne
d3320da7c6 Add ol.geom.MultiPolygon#getSimplifiedGeometryInternal 2013-12-09 16:37:33 +01:00
Tom Payne
e560192c0f Add ol.geom.Polygon#getSimplifiedGeometryInternal 2013-12-09 16:37:32 +01:00
Tom Payne
6275d8528e Add ol.geom.LineString#getSimplifiedGeometryInternal 2013-12-09 16:37:32 +01:00
Tom Payne
ec03be94d6 Add initial ol.geom.simplify 2013-12-09 16:37:32 +01:00
Tom Payne
c2228b1d19 Rename ol.geom.Layout to ol.geom.GeometryLayout 2013-12-04 16:27:03 +01:00
Tom Payne
1a9d19a2fb Allow geometries to have null coordinates and add setFlatCoordinates 2013-12-03 19:58:34 +01:00
Tom Payne
01c185ef57 Exploit known sense of rings to simplify area calculation 2013-12-02 12:15:07 +01:00
Tom Payne
e90776a099 Add ol.geom.flat.linearRingsArea 2013-12-02 12:07:33 +01:00
Tom Payne
f80cad531b Add ol.geom.flat.linearRingArea 2013-12-02 12:07:33 +01:00
Tom Payne
c3378d0bd5 Order test cases alphabetically 2013-12-02 12:07:10 +01:00
Tom Payne
b3473c3cba Add ol.geom.flat.flipXY 2013-12-02 09:08:06 +01:00
Tom Payne
321837f157 Add ol.geom.flat.lineStringInterpolate 2013-12-01 21:06:24 +01:00
Tom Payne
24ca534c54 Use skip instead of xit to mark failing tests 2013-11-20 11:44:48 +01:00
Tom Payne
0aa0cfd54b Move ol.geom.flatLinearRingIsClockwise into ol.geom.flat 2013-11-20 11:44:44 +01:00
Tom Payne
ca639a057f Rename ol.test.geom to ol.test.geom.flat 2013-11-20 11:44:44 +01:00
Tom Payne
48d3402044 Move reverseFlatCoordinates into ol.geom.flat 2013-11-20 11:44:44 +01:00
Tom Payne
16e5f238d2 Move inflateCoordinates into ol.geom.flat 2013-11-20 11:44:44 +01:00
Tom Payne
dc1ad7bb83 Move deflateCoodinates into ol.geom.flat 2013-11-20 11:44:44 +01:00
Tom Payne
376bd6359b Add more exhaustive polygon tests (some fail for reasons not yet known) 2013-11-20 11:42:09 +01:00
Tom Payne
43d67736a8 Add ol.geom.flatLinearRingIsClockwise 2013-11-20 11:42:09 +01:00
Tom Payne
72f64bd37a Add ol.geom.reverseFlatCoordinates 2013-11-20 11:42:08 +01:00
Tom Payne
809fee8988 Add missing whitespace 2013-11-20 11:42:08 +01:00
Tom Payne
07173c493e Refactor ol.geom.Polygon 2013-11-20 11:41:58 +01:00
Tom Payne
9d07e6509f Refactor ol.geom.MultiLineString 2013-11-20 11:41:58 +01:00
Tom Payne
7740929036 Add ol.geom.{de,in}flateCoordinatess 2013-11-20 11:41:58 +01:00
Tom Payne
a89bf0c329 Refactor ol.geom.Point 2013-11-20 11:41:58 +01:00
Tom Payne
6d32756adf Add ol.geom.MultiPoint 2013-11-20 11:41:57 +01:00
Tom Payne
ec748f254e Refactor ol.geom.LineString 2013-11-20 11:41:57 +01:00
Tom Payne
f67fa27c9e Add ol.geom.{in,de}flateCoordinates 2013-11-20 11:41:57 +01:00
Tom Payne
4e65fefc00 Move vector code out of the way 2013-11-20 11:39:21 +01:00
ahocevar
ed09173730 Deep clone geometry coordinates
Our geometries are mutable, so they can be modified without
creating garbage by changing coordinates in place and calling
setGeometry afterwards. But this also means that we need to
create a deep clone of the coordinates.
2013-11-12 11:36:40 +01:00
ahocevar
52552c9b18 Fire change events for multi-part geometries 2013-10-04 23:36:16 -06:00
Tim Schaub
b821619368 Change event for polygons 2013-10-03 12:28:35 -06:00
Tim Schaub
30b2e3930b Add setCoordinates for linestring and dispatch change event 2013-10-03 12:28:35 -06:00
Tim Schaub
e78690c2d2 Add setCoordinates for point and dispatch change event 2013-10-03 12:28:35 -06:00
Tim Schaub
9b47c15bd8 Make geometries event targets
Previously, the tests were using eql to make assertions about matching geometries.  This is inappropriate for structures with circular references (as with goog.events.EventTarget);
2013-10-03 12:28:34 -06:00
Tim Schaub
626a319222 Accessor for polygon rings 2013-10-03 12:28:34 -06:00
Tim Schaub
1aa83e133b Remove dimension property from geometries
This was only necessary when using the shared vertices structure.
2013-09-27 23:18:34 +01:00
Tim Schaub
3aff5e19f1 Remove shared vertices 2013-09-27 23:18:34 +01:00
Tim Schaub
33457c48de Add transform method to geometries
In the typical sequence of parse-transform-render the most efficient place to transform coordinate values is deep within the parser immediately after values have been read (this would avoid a second pass over whatever structure is used to back geometries).  To accomplish this transform during parsing, we could add back parser read options to pass the transform function around.

Until then, a transform method on geometries is straightforward to implement.  This means we do a second pass through coordinate structures to transform, but this is typically done only once immediately after parsing.
2013-09-27 23:18:34 +01:00
Tim Schaub
2850c761cf Remove use of shared vertices in geom package 2013-09-27 23:18:17 +01:00