Commit b9a99284f31ff92dfa7f24366b7401b3edf8207c

Authored by Edmar Moretti
1 parent 17aeead2

Atualização do pacote wiket

pacotes/wicket/wicket-gmap3.src.js
... ... @@ -1,313 +0,0 @@
1   -/*global Wkt, google, document, window, console*/
2   -google.maps.Marker.prototype.type = 'marker';
3   -google.maps.Polyline.prototype.type = 'polyline';
4   -google.maps.Polygon.prototype.type = 'polygon';
5   -google.maps.Rectangle.prototype.type = 'rectangle';
6   -google.maps.Circle.prototype.type = 'circle';
7   -
8   -/**
9   - * An object of framework-dependent construction methods used to generate
10   - * objects belonging to the various geometry classes of the framework.
11   - */
12   -Wkt.Wkt.prototype.construct = {
13   - /**
14   - * Creates the framework's equivalent point geometry object.
15   - * @param config {Object} An optional properties hash the object should use
16   - * @param component {Object} An optional component to build from
17   - * @return {google.maps.Marker}
18   - */
19   - 'point': function (config, component) {
20   - var c = component || this.components;
21   -
22   - config = config || {};
23   -
24   - config.position = new google.maps.LatLng(c[0].y, c[0].x);
25   -
26   - return new google.maps.Marker(config);
27   - },
28   -
29   - /**
30   - * Creates the framework's equivalent multipoint geometry object.
31   - * @param config {Object} An optional properties hash the object should use
32   - * @return {Array} Array containing multiple google.maps.Marker
33   - */
34   - 'multipoint': function (config) {
35   - var i, c, arr;
36   -
37   - c = this.components;
38   -
39   - config = config || {};
40   -
41   - arr = [];
42   -
43   - for (i = 0; i < c.length; i += 1) {
44   - arr.push(this.construct.point(config, c[i]));
45   - }
46   -
47   - return arr;
48   - },
49   -
50   - /**
51   - * Creates the framework's equivalent multipoint geometry object.
52   - * @param config {Object} An optional properties hash the object should use
53   - * @param component {Object} An optional component to build from
54   - * @return {google.maps.Polyline}
55   - */
56   - 'linestring': function (config, component) {
57   - var i, c;
58   -
59   - c = component || this.components;
60   -
61   - config = config || {
62   - editable: false
63   - };
64   -
65   - config.path = [];
66   -
67   - for (i = 0; i < c.length; i += 1) {
68   - config.path.push(new google.maps.LatLng(c[i].y, c[i].x));
69   - }
70   -
71   - return new google.maps.Polyline(config);
72   - },
73   -
74   - /**
75   - * Creates the framework's equivalent multilinestring geometry object.
76   - * @param config {Object} An optional properties hash the object should use
77   - * @return {Array} Array containing multiple google.maps.Polyline instances
78   - */
79   - 'multilinestring': function (config) {
80   - var i, c, arr;
81   -
82   - c = this.components;
83   -
84   - config = config || {
85   - editable: false
86   - };
87   -
88   - config.path = [];
89   -
90   - arr = [];
91   -
92   - for (i = 0; i < c.length; i += 1) {
93   - arr.push(this.construct.linestring(config, c[i]));
94   - }
95   -
96   - return arr;
97   - },
98   -
99   - /**
100   - * Creates the framework's equivalent polygon geometry object.
101   - * @param config {Object} An optional properties hash the object should use
102   - * @return {google.maps.Polygon}
103   - */
104   - 'polygon': function (config) {
105   - var j, k, c, rings, verts;
106   -
107   - c = this.components;
108   -
109   - config = config || {
110   - editable: false // Editable geometry off by default
111   - };
112   -
113   - config.paths = [];
114   -
115   - rings = [];
116   - for (j = 0; j < c.length; j += 1) { // For each ring...
117   -
118   - verts = [];
119   - for (k = 0; k < c[j].length; k += 1) { // For each vertex...
120   - verts.push(new google.maps.LatLng(c[j][k].y, c[j][k].x));
121   -
122   - } // eo for each vertex
123   -
124   - if (j !== 0) { // Reverse the order of coordinates in inner rings
125   - if (config.reverseInnerPolygons == null || config.reverseInnerPolygons) {
126   - verts.reverse();
127   - }
128   - }
129   -
130   - rings.push(verts);
131   - } // eo for each ring
132   -
133   - config.paths = config.paths.concat(rings);
134   -
135   - if (this.isRectangle) {
136   - console.log('Rectangles are not yet supported; set the isRectangle property to false (default).');
137   - } else {
138   - return new google.maps.Polygon(config);
139   - }
140   - },
141   -
142   - /**
143   - * Creates the framework's equivalent multipolygon geometry object.
144   - * @param config {Object} An optional properties hash the object should use
145   - * @return {Array} Array containing multiple google.maps.Polygon
146   - */
147   - 'multipolygon': function (config) {
148   - var i, j, k, c, rings, verts;
149   -
150   - c = this.components;
151   -
152   - config = config || {
153   - editable: false // Editable geometry off by default
154   - };
155   -
156   - config.paths = []; // Must ensure this property is available
157   -
158   - for (i = 0; i < c.length; i += 1) { // For each polygon...
159   -
160   - rings = [];
161   - for (j = 0; j < c[i].length; j += 1) { // For each ring...
162   -
163   - verts = [];
164   - for (k = 0; k < c[i][j].length; k += 1) { // For each vertex...
165   - verts.push(new google.maps.LatLng(c[i][j][k].y, c[i][j][k].x));
166   -
167   - } // eo for each vertex
168   -
169   -/* // This is apparently not needed in multipolygon cases
170   - if (j !== 0) { // Reverse the order of coordinates in inner rings
171   - verts.reverse();
172   - }
173   -*/
174   - rings.push(verts);
175   - } // eo for each ring
176   -
177   - config.paths = config.paths.concat(rings);
178   -
179   - } // eo for each polygon
180   -
181   - return new google.maps.Polygon(config);
182   - }
183   -
184   -};
185   -
186   -/**
187   - * A framework-dependent deconstruction method used to generate internal
188   - * geometric representations from instances of framework geometry. This method
189   - * uses object detection to attempt to classify members of framework geometry
190   - * classes into the standard WKT types.
191   - * @param obj {Object} An instance of one of the framework's geometry classes
192   - * @return {Object} A hash of the 'type' and 'components' thus derived
193   - */
194   -Wkt.Wkt.prototype.deconstruct = function (obj) {
195   - var i, j, verts, rings, tmp;
196   -
197   - // google.maps.Marker //////////////////////////////////////////////////////
198   - if (obj.getPosition && typeof obj.getPosition === 'function') {
199   - // Only Markers, among all overlays, have the getPosition property
200   -
201   - return {
202   - type: 'point',
203   - components: [{
204   - x: obj.getPosition().lng(),
205   - y: obj.getPosition().lat()
206   - }]
207   - };
208   -
209   - // google.maps.Polyline ////////////////////////////////////////////////////
210   - } else if (obj.getPath && !obj.getPaths) {
211   - // Polylines have a single path (getPath) not paths (getPaths)
212   -
213   - verts = [];
214   - for (i = 0; i < obj.getPath().length; i += 1) {
215   - tmp = obj.getPath().getAt(i);
216   - verts.push({
217   - x: tmp.lng(),
218   - y: tmp.lat()
219   - });
220   - }
221   -
222   - return {
223   - type: 'linestring',
224   - components: verts
225   - };
226   -
227   - // google.maps.Polygon /////////////////////////////////////////////////////
228   - } else if (obj.getPaths) {
229   - // Polygon is the only class with the getPaths property
230   -
231   - // TODO Polygons with holes cannot be distinguished from multipolygons
232   - rings = [];
233   - for (i = 0; i < obj.getPaths().length; i += 1) { // For each polygon (ring)...
234   - tmp = obj.getPaths().getAt(i);
235   -
236   - verts = [];
237   - for (j = 0; j < obj.getPaths().getAt(i).length; j += 1) { // For each vertex...
238   - verts.push({
239   - x: tmp.getAt(j).lng(),
240   - y: tmp.getAt(j).lat()
241   - });
242   - }
243   -
244   - verts.push({ // Add the first coordinate again for closure
245   - x: tmp.getAt(0).lng(),
246   - y: tmp.getAt(0).lat()
247   - });
248   -
249   - // Since we can't distinguish between single polygons with holes
250   - // and multipolygons, we always create multipolygons
251   - if (obj.getPaths().length > 1) {
252   - verts = [verts]; // Wrap multipolygons once more (collection)
253   - }
254   -
255   - rings.push(verts);
256   - }
257   -
258   - return {
259   - type: 'polygon',
260   - components: rings
261   - };
262   -
263   - // google.maps.Rectangle ///////////////////////////////////////////////////
264   - } else if (obj.getBounds && !obj.getRadius) {
265   - // Rectangle is only overlay class with getBounds property and not getRadius property
266   -
267   - tmp = obj.getBounds();
268   - return {
269   - type: 'polygon',
270   - isRectangle: true,
271   - components: [
272   - [
273   - { // NW corner
274   - x: tmp.getSouthWest().lng(),
275   - y: tmp.getNorthEast().lat()
276   - },
277   - { // NE corner
278   - x: tmp.getNorthEast().lng(),
279   - y: tmp.getNorthEast().lat()
280   - },
281   - { // SE corner
282   - x: tmp.getNorthEast().lng(),
283   - y: tmp.getSouthWest().lat()
284   - },
285   - { // SW corner
286   - x: tmp.getSouthWest().lng(),
287   - y: tmp.getSouthWest().lat()
288   - },
289   - { // NW corner (again, for closure)
290   - x: tmp.getSouthWest().lng(),
291   - y: tmp.getNorthEast().lat()
292   - }
293   - ]
294   - ]
295   - };
296   -
297   - // google.maps.Circle //////////////////////////////////////////////////////
298   - } else if (obj.getBounds && obj.getRadius) {
299   - // Circle is the only overlay class with both the getBounds and getRadius properties
300   -
301   - console.log('Deconstruction of google.maps.Circle objects is not yet supported');
302   -
303   - } else {
304   - console.log('The passed object does not have any recognizable properties.');
305   - }
306   -
307   -};
308   -
309   -/**
310   - * A framework-dependent flag, set for each Wkt.Wkt() instance, that indicates
311   - * whether or not a closed polygon geometry should be interpreted as a rectangle.
312   - */
313   -Wkt.Wkt.prototype.isRectangle = false;
pacotes/wicket/wicket-leaflet.src.js
... ... @@ -1,61 +0,0 @@
1   -Wkt.Wkt.prototype.isRectangle = false;
2   -
3   -Wkt.Wkt.prototype.construct = {
4   - point: function (config, component) {
5   - var coord = component || this.components;
6   - if (coord instanceof Array) {
7   - coord = coord[0];
8   - }
9   -
10   - return L.marker(this.coordsToLatLng(coord), config);
11   - },
12   -
13   - multipoint: function (config) {
14   - var layers = [],
15   - coords = this.components,
16   - latlng;
17   -
18   - for (var i = 0, len = coords.length; i < len; i++) {
19   - layers.push(this.construct.point.call(this, config, coords[i]));
20   - }
21   -
22   - return L.featureGroup(layers, config);
23   - },
24   -
25   - linestring: function (config, component) {
26   - var coords = component || this.components,
27   - latlngs = this.coordsToLatLngs(coords);
28   -
29   - return L.polyLine(latlngs);
30   - },
31   -
32   - multilinestring: function (config) {
33   - var coords = this.components,
34   - latlngs = this.coordsToLatLngs(coords, 1);
35   -
36   - return L.multiPolyline(latlngs);
37   - },
38   -
39   - polygon: function (config) {
40   - var coords = this.components,
41   - latlngs = this.coordsToLatLngs(coords, 1);
42   - return L.polygon(latlngs);
43   - },
44   -
45   - multipolygon: function (config) {
46   - var coords = this.components,
47   - latlngs = this.coordsToLatLngs(coords, 2);
48   -
49   - return L.multiPolygon(latlngs);
50   - }
51   -};
52   -
53   -L.Util.extend(Wkt.Wkt.prototype, {
54   - coordsToLatLngs: L.GeoJSON.coordsToLatLngs,
55   - coordsToLatLng: function (coords, reverse) {
56   - var lat = reverse ? coords.x : coords.y,
57   - lng = reverse ? coords.y : coords.x;
58   -
59   - return L.latLng(lat, lng, true);
60   - }
61   -});
pacotes/wicket/wicket.src.js
... ... @@ -1,385 +0,0 @@
1   -/*global console, document, window*/
2   -/**
3   - * @author K. Arthur Endsley <arthur.endsley@gmail.com>
4   - */
5   -var Wkt = (function () { // Execute function immediately
6   -
7   - return {
8   - // The default delimiter for separating components of atomic geometry (coordinates)
9   - delimiter: ' ',
10   -
11   - isArray: function (obj) {
12   - return !!(obj && obj.constructor == Array);
13   - },
14   -
15   - /**
16   - * An object for reading WKT strings and writing geographic features
17   - * @param {String} An optional WKT string for immediate read
18   - * @param {Wkt.Wkt} A WKT object
19   - */
20   - Wkt: function (initializer) {
21   - var beginsWith, endsWith, trim;
22   -
23   - /**
24   - * @private
25   - */
26   - beginsWith = function (str, sub) {
27   - return str.substring(0, sub.length) === sub;
28   - };
29   -
30   - /**
31   - * @private
32   - */
33   - endsWith = function (str, sub) {
34   - return str.substring(str.length - sub.length) === sub;
35   - };
36   -
37   - /**
38   - * @private
39   - */
40   - trim = function (str, sub) {
41   - sub = sub || ' '; // Defaults to trimming spaces
42   - // Trim beginning spaces
43   - while (beginsWith(str, sub)) {
44   - str = str.substring(1);
45   - }
46   - // Trim ending spaces
47   - while (endsWith(str, sub)) {
48   - str = str.substring(0, str.length - 1);
49   - }
50   - return str;
51   - };
52   -
53   - /**
54   - * The default delimiter between X and Y coordinates.
55   - */
56   - this.delimiter = Wkt.delimiter;
57   -
58   - /**
59   - * Some regular expressions copied from OpenLayers.Format.WKT.js
60   - */
61   - this.regExes = {
62   - 'typeStr': /^\s*(\w+)\s*\(\s*(.*)\s*\)\s*$/,
63   - 'spaces': /\s+|\+/, // Matches the '+' or the empty space
64   - 'numeric': /-*\d+\.*\d+/,
65   - 'comma': /\s*,\s*/,
66   - 'parenComma': /\)\s*,\s*\(/,
67   - 'doubleParenComma': /\)\s*\)\s*,\s*\(\s*\(/,
68   - 'trimParens': /^\s*\(?(.*?)\)?\s*$/
69   - };
70   -
71   - /**
72   - * Returns true if the internal geometry is a collection of geometries.
73   - * @return {Boolean} Returns true when it is a collection
74   - */
75   - this.isCollection = function () {
76   - switch (this.type.slice(0, 5)) {
77   - case 'multi':
78   - // Trivial; any multi-geometry is a collection
79   - return true;
80   - case 'polyg':
81   - // Polygons with holes are "collections" of rings
82   - return true;
83   - default:
84   - // Any other geometry is not a collection
85   - return false;
86   - }
87   - };
88   -
89   - /**
90   - * The internal representation of geometry--the "components" of geometry.
91   - */
92   - this.components = undefined;
93   -
94   - /**
95   - * Sets internal geometry (components) from framework geometry (e.g.
96   - * Google Polygon objects or google.maps.Polygon).
97   - * @param obj {Object} The framework-dependent geometry representation
98   - * @return {Wkt.Wkt} The object itself
99   - */
100   - this.fromObject = function (obj) {
101   - var result = this.deconstruct.call(this, obj);
102   - this.components = result.components;
103   - this.isRectangle = result.isRectangle || false;
104   - this.type = result.type;
105   - return this;
106   - };
107   -
108   - /**
109   - * Creates external geometry objects based on a plug-in framework's
110   - * construction methods and available geometry classes.
111   - * @param config {Object} An optional framework-dependent properties specification
112   - * @return {Object} The framework-dependent geometry representation
113   - */
114   - this.toObject = function (config) {
115   - return this.construct[this.type].call(this, config);
116   - };
117   -
118   - /**
119   - * Reads a WKT string, validating and incorporating it.
120   - * @param wkt {String} A WKT string
121   - * @return {Array} An Array of internal geometry objects
122   - */
123   - this.read = function (wkt) {
124   - var matches;
125   - matches = this.regExes.typeStr.exec(wkt);
126   - if (matches) {
127   - this.type = matches[1].toLowerCase();
128   - this.base = matches[2];
129   - if (this.ingest[this.type]) {
130   - this.components = this.ingest[this.type].apply(this, [this.base]);
131   - }
132   - } else {
133   - console.log("Invalid WKT string provided to read()");
134   - throw {
135   - name: "WKTError",
136   - message: "Invalid WKT string provided to read()"
137   - }
138   - }
139   - return this.components;
140   - }; // eo readWkt
141   -
142   - /**
143   - * Writes a WKT string.
144   - * @param components {Array} An Array of internal geometry objects
145   - * @return {String} The corresponding WKT representation
146   - */
147   - this.write = function (components) {
148   - var i, pieces, data;
149   -
150   - components = components || this.components;
151   -
152   - pieces = [];
153   -
154   - pieces.push(this.type.toUpperCase() + '(');
155   -
156   - for (i = 0; i < components.length; i += 1) {
157   - if (this.isCollection() && i > 0) {
158   - pieces.push(',');
159   - }
160   -
161   - // There should be an extract function for the named type
162   - if (!this.extract[this.type]) {
163   - return null;
164   - }
165   -//original
166   -//data = this.extract[this.type].apply(this, [components[i]]);
167   -//alterado por edmar
168   - if(components[i].length == 1){
169   - data = this.extract[this.type].apply(this, [components[i][0]]);
170   - }
171   - else{
172   - data = this.extract[this.type].apply(this, [components[i]]);
173   - }
174   - if (this.isCollection()) {
175   - pieces.push('(' + data + ')');
176   - } else {
177   - pieces.push(data);
178   - // If not at the end of the components, add a comma
179   - if (i !== components.length - 1) {
180   - pieces.push(',');
181   - }
182   - }
183   - }
184   -
185   - pieces.push(')');
186   -
187   - return pieces.join('');
188   - };
189   -
190   - /**
191   - * This object contains functions as property names that extract WKT
192   - * strings from the internal representation.
193   - */
194   - this.extract = {
195   - /**
196   - * Return a WKT string representing atomic (point) geometry
197   - * @param point {Object} An object with x and y properties
198   - * @return {String} The WKT representation
199   - */
200   - 'point': function (point) {
201   - return point.x + this.delimiter + point.y;
202   - },
203   - /**
204   - * Return a WKT string representing multiple atoms (points)
205   - * @param point {Array} Multiple x-and-y objects
206   - * @return {String} The WKT representation
207   - */
208   - 'multipoint': function (multipoint) {
209   - var i, parts = [];
210   - for (i = 0; i < multipoint.length; i += 1) {
211   - parts.push(this.extract.point.apply(this, [multipoint[i]]));
212   - }
213   - return parts.join(',');
214   - },
215   - /**
216   - * Return a WKT string representing a chain (linestring) of atoms
217   - * @param point {Array} Multiple x-and-y objects
218   - * @return {String} The WKT representation
219   - */
220   - 'linestring': function (linestring) {
221   - // Extraction of linestrings is the same as for points
222   - return this.extract.point.apply(this, [linestring]);
223   - },
224   - /**
225   - * Return a WKT string representing multiple chains (multilinestring) of atoms
226   - * @param point {Array} Multiple of multiple x-and-y objects
227   - * @return {String} The WKT representation
228   - */
229   - 'multilinestring': function (multilinestring) {
230   - var i, parts = [];
231   - for (i = 0; i < multilinestring.length; i += 1) {
232   - parts.push('(' + this.extract.linestring.apply(this, [multilinestring[i]]) + ')');
233   - }
234   - return parts.join(',');
235   - },
236   - /**
237   - * Return a WKT string representing multiple atoms in closed series (polygon)
238   - * @param point {Array} Collection of ordered x-and-y objects
239   - * @return {String} The WKT representation
240   - */
241   - 'polygon': function (polygon) {
242   - // Extraction of polygons is the same as for multipoints
243   - return this.extract.multipoint.apply(this, [polygon]);
244   - },
245   - /**
246   - * Return a WKT string representing multiple closed series (multipolygons) of multiple atoms
247   - * @param point {Array} Collection of ordered x-and-y objects
248   - * @return {String} The WKT representation
249   - */
250   - 'multipolygon': function (multipolygon) {
251   - var i, parts = [];
252   - for (i = 0; i < multipolygon.length; i += 1) {
253   - parts.push('(' + this.extract.polygon.apply(this, [multipolygon[i]]) + ')');
254   - }
255   - return parts.join(',');
256   - }
257   - };
258   -
259   - /**
260   - * This object contains functions as property names that ingest WKT
261   - * strings into the internal representation.
262   - */
263   - this.ingest = {
264   -
265   - /**
266   - * Return point feature given a point WKT fragment.
267   - * @param str {String} A WKT fragment representing the point
268   - */
269   - 'point': function (str) {
270   - var coords = trim(str).split(this.regExes.spaces);
271   - // In case a parenthetical group of coordinates is passed...
272   - return [{ // ...Search for numeric substrings
273   - x: parseFloat(this.regExes.numeric.exec(coords[0])[0]),
274   - y: parseFloat(this.regExes.numeric.exec(coords[1])[0])
275   - }];
276   - },
277   -
278   - /**
279   - * Return a multipoint feature given a multipoint WKT fragment.
280   - * @param str {String} A WKT fragment representing the multipoint
281   - */
282   - 'multipoint': function (str) {
283   - var i, components, points;
284   - components = [];
285   - points = trim(str).split(this.regExes.comma);
286   - for (i = 0; i < points.length; i += 1) {
287   - components.push(this.ingest.point.apply(this, [points[i]]));
288   - }
289   - return components;
290   - },
291   -
292   - /**
293   - * Return a linestring feature given a linestring WKT fragment.
294   - * @param str {String} A WKT fragment representing the linestring
295   - */
296   - 'linestring': function (str) {
297   - var i, multipoints, components;
298   -
299   - // In our x-and-y representation of components, parsing
300   - // multipoints is the same as parsing linestrings
301   - multipoints = this.ingest.multipoint.apply(this, [str]);
302   -
303   - // However, the points need to be joined
304   - components = [];
305   - for (i = 0; i < multipoints.length; i += 1) {
306   - components = components.concat(multipoints[i]);
307   - }
308   - return components;
309   - },
310   -
311   - /**
312   - * Return a multilinestring feature given a multilinestring WKT fragment.
313   - * @param str {String} A WKT fragment representing the multilinestring
314   - */
315   - 'multilinestring': function (str) {
316   - var i, components, line, lines;
317   - components = [];
318   - lines = trim(str).split(this.regExes.parenComma);
319   - for (i = 0; i < lines.length; i += 1) {
320   - line = lines[i].replace(this.regExes.trimParens, '$1');
321   - components.push(this.ingest.linestring.apply(this, [line]));
322   - }
323   - return components;
324   - },
325   -
326   - /**
327   - * Return a polygon feature given a polygon WKT fragment.
328   - * @param str {String} A WKT fragment representing the polygon
329   - */
330   - 'polygon': function (str) {
331   - var i, j, components, subcomponents, ring, rings;
332   - rings = trim(str).split(this.regExes.parenComma);
333   - components = []; // Holds one or more rings
334   - for (i = 0; i < rings.length; i += 1) {
335   - ring = rings[i].replace(this.regExes.trimParens, '$1').split(this.regExes.comma);
336   - subcomponents = []; // Holds the outer ring and any inner rings (holes)
337   - for (j = 0; j < ring.length; j += 1) {
338   - // Split on the empty space or '+' character (between coordinates)
339   - subcomponents.push({
340   - x: parseFloat(ring[j].split(this.regExes.spaces)[0]),
341   - y: parseFloat(ring[j].split(this.regExes.spaces)[1])
342   - });
343   - }
344   - components.push(subcomponents);
345   - }
346   - return components;
347   - },
348   -
349   - /**
350   - * Return a multipolygon feature given a multipolygon WKT fragment.
351   - * @param str {String} A WKT fragment representing the multipolygon
352   - */
353   - 'multipolygon': function (str) {
354   - var i, components, polygon, polygons;
355   - components = [];
356   - polygons = trim(str).split(this.regExes.doubleParenComma);
357   - for (i = 0; i < polygons.length; i += 1) {
358   - polygon = polygons[i].replace(this.regExes.trimParens, '$1');
359   - components.push(this.ingest.polygon.apply(this, [polygon]));
360   - }
361   - return components;
362   - },
363   -
364   - /**
365   - * Return an array of features given a geometrycollection WKT fragment.
366   - * @param str {String} A WKT fragment representing the geometry collection
367   - */
368   - 'geometrycollection': function (str) {
369   - console.log('The geometrycollection WKT type is not yet supported.');
370   - }
371   -
372   - }; // eo ingest
373   -
374   - // An initial WKT string may be provided
375   - if (initializer && typeof initializer === 'string') {
376   - this.read(initializer);
377   - } else if (this.fromGeometry) { // Or, an initial geometry object to be read
378   - this.fromGeometry(initializer);
379   - }
380   -
381   - } // eo WKt.Wkt
382   -
383   - }; // eo return
384   -
385   -}()); // eo Wkt