Add support for GeometryCollection in modify interaction

This commit is contained in:
Antoine Abt
2014-02-04 14:11:30 +01:00
parent a60203f931
commit e64766f01f
+17 -1
View File
@@ -106,7 +106,8 @@ ol.interaction.Modify = function(featuresOverlay, opt_options) {
'Polygon': this.writePolygonGeometry_, 'Polygon': this.writePolygonGeometry_,
'MultiPoint': this.writeMultiPointGeometry_, 'MultiPoint': this.writeMultiPointGeometry_,
'MultiLineString': this.writeMultiLineStringGeometry_, 'MultiLineString': this.writeMultiLineStringGeometry_,
'MultiPolygon': this.writeMultiPolygonGeometry_ 'MultiPolygon': this.writeMultiPolygonGeometry_,
'GeometryCollection': this.writeGeometryCollectionGeometry_
}; };
}; };
@@ -344,6 +345,21 @@ ol.interaction.Modify.prototype.writeMultiPolygonGeometry_ =
}; };
/**
* @param {ol.Feature} feature Feature
* @param {ol.geom.GeometryCollection} geometry Geometry.
* @private
*/
ol.interaction.Modify.prototype.writeGeometryCollectionGeometry_ =
function(feature, geometry) {
var i, geometries = geometry.getGeometriesArray();
for (i = 0; i < geometries.length; ++i) {
this.SEGMENT_WRITERS_[geometries[i].getType()].call(
this, feature, geometries[i]);
}
};
/** /**
* @param {ol.CollectionEvent} evt Event. * @param {ol.CollectionEvent} evt Event.
* @private * @private