#611: let all geometry inherit toString from the superclass - geometry.toString returns well-known text based on Format.WKT.write()
git-svn-id: http://svn.openlayers.org/trunk/openlayers@2945 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
@@ -69,6 +69,9 @@ OpenLayers.Format.WKT.prototype =
|
|||||||
}
|
}
|
||||||
geometry = collection[i];
|
geometry = collection[i];
|
||||||
type = geometry.CLASS_NAME.split('.')[2].toLowerCase();
|
type = geometry.CLASS_NAME.split('.')[2].toLowerCase();
|
||||||
|
if(!this.extract[type]) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
data = this.extract[type].apply(this, [geometry]);
|
data = this.extract[type].apply(this, [geometry]);
|
||||||
pieces.push(type.toUpperCase() + '(' + data + ')');
|
pieces.push(type.toUpperCase() + '(' + data + ')');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @class
|
* @class
|
||||||
|
* @requires OpenLayers/Format/WKT.js
|
||||||
*/
|
*/
|
||||||
OpenLayers.Geometry = OpenLayers.Class.create();
|
OpenLayers.Geometry = OpenLayers.Class.create();
|
||||||
OpenLayers.Geometry.prototype = {
|
OpenLayers.Geometry.prototype = {
|
||||||
@@ -160,6 +161,14 @@ OpenLayers.Geometry.prototype = {
|
|||||||
return 0.0;
|
return 0.0;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns the Well-Known Text representation of a geometry
|
||||||
|
* @type String
|
||||||
|
*/
|
||||||
|
toString: function() {
|
||||||
|
return OpenLayers.Format.WKT.prototype.write(this);
|
||||||
|
},
|
||||||
|
|
||||||
/** @final @type String */
|
/** @final @type String */
|
||||||
CLASS_NAME: "OpenLayers.Geometry"
|
CLASS_NAME: "OpenLayers.Geometry"
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -54,15 +54,6 @@ OpenLayers.Geometry.Collection.prototype =
|
|||||||
this.components = null;
|
this.components = null;
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
|
||||||
* @returns The coordinates components as a string
|
|
||||||
* @type String
|
|
||||||
*/
|
|
||||||
toString: function() {
|
|
||||||
return this.components.toString();
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @returns An exact clone of this collection
|
* @returns An exact clone of this collection
|
||||||
* @type OpenLayers.Geometry.Collection
|
* @type OpenLayers.Geometry.Collection
|
||||||
|
|||||||
@@ -85,14 +85,6 @@ OpenLayers.Geometry.Point.prototype =
|
|||||||
return equals;
|
return equals;
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
|
||||||
* @returns the coordinates as a string
|
|
||||||
* @type String
|
|
||||||
*/
|
|
||||||
toString: function() {
|
|
||||||
return this.toShortString();
|
|
||||||
},
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return Shortened String representation of Point object.
|
* @return Shortened String representation of Point object.
|
||||||
* (ex. <i>"5, 42"</i>)
|
* (ex. <i>"5, 42"</i>)
|
||||||
|
|||||||
@@ -28,7 +28,9 @@
|
|||||||
t.plan(1);
|
t.plan(1);
|
||||||
|
|
||||||
line = new OpenLayers.Geometry.LineString(components);
|
line = new OpenLayers.Geometry.LineString(components);
|
||||||
t.eq( line.toString(), components.toString(), "toString output checks in");
|
t.eq(line.toString(),
|
||||||
|
"LINESTRING(10 15,0 0)",
|
||||||
|
"toString() returns WKT");
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_03_LineString_removeComponent(t) {
|
function test_03_LineString_removeComponent(t) {
|
||||||
@@ -56,7 +58,9 @@
|
|||||||
function test_04_LineString_move(t) {
|
function test_04_LineString_move(t) {
|
||||||
t.plan(4);
|
t.plan(4);
|
||||||
|
|
||||||
line = new OpenLayers.Geometry.LineString(components);
|
var components = [new OpenLayers.Geometry.Point(10,15),
|
||||||
|
new OpenLayers.Geometry.Point(0,0)];
|
||||||
|
var line = new OpenLayers.Geometry.LineString(components);
|
||||||
|
|
||||||
var x0 = components[0].x;
|
var x0 = components[0].x;
|
||||||
var y0 = components[0].y;
|
var y0 = components[0].y;
|
||||||
|
|||||||
@@ -97,13 +97,6 @@
|
|||||||
t.eq(ring.getArea(), 100, "getArea works lovely");
|
t.eq(ring.getArea(), 100, "getArea works lovely");
|
||||||
}
|
}
|
||||||
|
|
||||||
function test_05_LinearRing_toString(t) {
|
|
||||||
t.plan(1);
|
|
||||||
|
|
||||||
ring = new OpenLayers.Geometry.LinearRing(components);
|
|
||||||
t.eq( ring.toString(), components.toString() + ',' + components[0].toString(), "toString output is ok");
|
|
||||||
}
|
|
||||||
|
|
||||||
// -->
|
// -->
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
@@ -60,7 +60,8 @@
|
|||||||
var y = 20;
|
var y = 20;
|
||||||
point = new OpenLayers.Geometry.Point(x, y);
|
point = new OpenLayers.Geometry.Point(x, y);
|
||||||
bounds = point.getBounds();
|
bounds = point.getBounds();
|
||||||
t.eq( point.toString(), x + ", " + y, "toString() works" );
|
t.eq(point.toString(), "POINT(" + x + " " + y + ")",
|
||||||
|
"toString() returns WKT" );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user