Commit Graph

53 Commits

Author SHA1 Message Date
Éric Lemoine e45c44fa01 Add missing goog.provide's 2015-04-07 13:49:36 +02:00
Tim Schaub 587c06f565 Stable intersectsExtent method for geometries 2015-04-02 16:23:54 +02:00
Frederic Junod 65c2f7de5f Remove unused goog.require 2015-02-05 10:56:44 +01:00
Frederic Junod 8bd0a1232a Add geom.ol.geom.Geometry#computeExtent function 2015-01-14 11:01:18 +01:00
Éric Lemoine 612cf70560 Add ol.geom.Point#intersectsExtent 2014-09-17 12:17:32 +02:00
Andreas Hocevar ebe3b48e0a Rename ol.Observable#dispatchChangeEvent() to #changed()
Since dispatchChangeEvent does not only dispatch a change event, but
also increases the revision counter, the method name should reflect
this.
2014-09-04 19:30:48 -06:00
Frederic Junod 42312c6c73 Improve ol.geom.*.clone() return type annotation 2014-08-27 13:30:06 +02:00
Éric Lemoine 72bcb2db80 Remove the ol.geom.RawPoint type 2014-08-21 10:56:49 +02:00
Éric Lemoine b865958efb Add @api stable annotations for ol.geom.Point 2014-08-21 10:56:49 +02:00
Erik Timmers fe8a72dce5 Allow for empty Point & GeometryCollection 2014-07-15 13:20:58 +02:00
Tim Schaub 4cf5ab4620 Use @api annotation instead of @todo api 2014-07-05 15:41:14 -04:00
Peter Robins 41d9f0360a Add @classdesc to classes 2014-06-09 12:10:19 -04:00
Andreas Hocevar d163f60e34 Make sure that opt_layout is listed as optional 2014-05-15 20:29:16 +02:00
Andreas Hocevar fbdbbfb7a7 Get rid of stability annotations and document stability with api
This change adds a stability value to the api annotation, with
'experimental' as default value.

enum, typedef and event annotations are never exportable, but
api annotations are needed there to make them appear in the
docs.

Nested typedefs are no longer inlined recursively, because the
resulting tables get too wide with the current template.
2014-04-29 09:53:07 -06:00
Tim Schaub fb497f5288 Annotations for exports 2014-04-29 09:53:05 -06:00
Pierre GIRAUD 8e9ffb377e Geolocation tracking with orientation example 2014-03-24 12:26:17 +01:00
Tom Payne 78c8d976eb Remove empty ol.geom.flat 2014-03-12 13:26:14 +01:00
Tom Payne 6a00c14841 Move squaredDistance and squaredSegmentDistance into ol.math 2014-03-12 13:26:14 +01:00
Tom Payne 266c43dc78 Factor out ol.geom.flat.deflate 2014-03-12 13:26:14 +01:00
Tom Payne 0ed865efe4 Add stability annotation to ol.geom.Point 2014-02-03 14:45:00 +01:00
Tom Payne edcb38232f Use inherited dispatchChangeEvent and getRevision in ol.geom.Geometry 2014-01-21 11:43:13 +01:00
Tom Payne 2da724572a Preserve extra dimensions in ol.geom.Point#closestPointXY 2014-01-20 09:32:21 +01:00
oterral 235af49f0b Add goog.provide('ol.geom.GeometryType') 2014-01-10 14:00:30 +01:00
Tom Payne 802d1644bb Implement clone for simple geometries 2013-12-11 16:49:47 +01:00
Tom Payne 76a6e08ec1 Factor out ol.geom.SimpleGeometry 2013-12-11 16:49:47 +01:00
Tom Payne 1add41033a Add ol.geom.Point#closestPointXY 2013-12-09 16:40:53 +01:00
Tom Payne 057cda42be Rename ol.geom.Type to ol.geom.GeometryType 2013-12-04 16:28:36 +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 cd9b52572a Replace ol.geom.GeometryType with ol.geom.Type 2013-11-20 11:42:09 +01:00
Tom Payne a89bf0c329 Refactor ol.geom.Point 2013-11-20 11:41:58 +01:00
Tom Payne cfaad0eff1 Use raw geometry types 2013-11-20 11:41:57 +01:00
Tom Payne cb75fcad9f Add ol.geom.Point 2013-11-20 11:41:06 +01:00
Tom Payne 4e65fefc00 Move vector code out of the way 2013-11-20 11:39:21 +01:00
Paul Spencer bada596b45 Add default stability level to docs of exported things. 2013-10-24 18:20:24 -04:00
Tim Schaub e78690c2d2 Add setCoordinates for point and dispatch change event 2013-10-03 12:28:35 -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 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
Tim Schaub e806f51b3d Changing extent structure back to single array: [minX, minY, maxX, maxY]
This means we'll have to have a new structure and new methods for 3D envelopes.
2013-09-15 00:31:32 -06:00
Tim Schaub 60bf396e25 Update geom package to use new extent structure 2013-09-14 21:11:52 -06:00
Tim Schaub 7165d414c7 Use ol.Coordinate instead of ol.geom.Vertex 2013-08-30 13:30:25 -06:00
Tom Payne 953f9c2e7a Port ol.geom to new extents 2013-04-19 10:03:36 +02:00
Tim Schaub a968a5ca66 The shared vertices structure now works with integer arrays only
Previously, a lookup object containing start indexes was also used.  This allowed us to remove arrays of vertices and properly update the start indexes for remaining coordinate values.  In order to provide callers with stable identifiers and to work with arrays of integers alone, we cannot support a remove method.  I think this is worth revisiting.  Even if the array length cannot be changed in WebGL, we don't need to also impose the restriction outside.  Instead, the WebGL renderer could be notified when array sizes change and update itself accordingly.  I think there is more value in providing geometries with stable identifiers.

This common structure is used to store vertices for all geometry types.  A slight optimization could be made by creating yet another structure to store point vertices - since these don't need to have a counts array (always 1).  Creating a new structure would mean saving memory at the expense of more lib code to transport.  The coordinate value lookups are not negatively impacted by using the same structure for points and higher order geometries.  Since the first change above goes against my instincts, I'm not making this second change (to add another structure for shared point vertices).
2013-03-05 11:47:42 +01:00
Tim Schaub b52d283641 Allow geometries to use a shared vertex array
The ol.geom.SharedVertices structure represents a flattened array of vertex coordinates.  This is intended to support optimal WebGL rendering.
2013-03-02 18:39:24 +01:00
Tim Schaub 8f578b88b1 Removing the typed arrays
Its not clear that we will be able to leverage the Float64Array.  It may also be that the overhead of constructing these small arrays negates any benefit of faster access.  And for all coordinate arrays, we'll need arrays that grow/shrink.
2013-02-20 01:15:39 -07:00
Tim Schaub 0015e466dc Allow instanceof checks for geometries 2013-02-19 23:21:05 -07:00
ahocevar 619803cdeb More goog.requires fixes 2013-02-06 16:36:42 +01:00
Tim Schaub 6ef2184c83 Geometry type enumeration 2013-01-21 17:46:41 -07:00
Tim Schaub b4d44f815f Add getBounds to geometry 2013-01-21 12:59:04 -07:00