[OpenLayers-Users] Multipolygon to Polygons

Slawomir Messner slawomir.messner at staff.uni-marburg.de
Fri Sep 21 01:43:27 PDT 2012


		var features = [];
		features = new OpenLayers.Feature.Vector(new
OpenLayers.Geometry.Polygon());

you override the array with a single feature and addFeatures accepts 
only array of features.
In my opinion your code should be like:

		function cmd_MPoly_to_polys() {
			var MPolyFeature = wfs_mpolygon.selectedFeatures;
			var features = [];
			var f = null;
			var i = null;
		
			for(var f in MPolyFeature[f]) {
				for(var i in MPolyFeature[f].geometry.components[i]) {
					var_feature_  = new OpenLayers.Feature.Vector(new OpenLayers.Geometry._MultiPolygon_());
					var poly = new OpenLayers.Geometry.Polygon(MPolyFeature[f].geometry.components[i]);
					feature.geometry.components.push(poly);	
					feature.attributes.typ = MPolyFeature[f].attributes.typ;
					feature.attributes.tst = MPolyFeature[f].attributes.tst;
					feature.state = OpenLayers.State.INSERT;
					features.push(feature);
				}				
			}
			
			wfs_polygon.addFeatures(features);
			wfs_mpolygon.removeFeatures(MPolyFeature);
			wfs_polygon.redraw();
		}

for every component in every multi polygon you create an feature and add 
it to the features array which you add to the layer later.
Regards
Slawomir

Am 21.09.2012 10:33, schrieb vGIS:
> Thanks for Your fast replys!
>
> 		function cmd_MPoly_to_polys() {
> 		var MPolyFeature = wfs_mpolygon.selectedFeatures;
> 		var features = [];
> 		features = new OpenLayers.Feature.Vector(new
> OpenLayers.Geometry.Polygon());
> 		var f = null;
> 		var i = null;
> 		
> 			for(var f in MPolyFeature[f]) {
> 				for(var i in MPolyFeature[f].geometry.components[i]) {
> 					features[f].geometry = new
> OpenLayers.Geometry.Polygon(MPolyFeature[f].geometry.components[i]);
> 					features[f].attributes.typ = MPolyFeature[f].attributes.typ;
> 					features[f].attributes.tst = MPolyFeature[f].attributes.tst;
> 					features[f].state = OpenLayers.State.INSERT;
> 				}
> 			}
> 			
> 		wfs_polygon.addFeatures(features);
> 		wfs_mpolygon.removeFeatures(MPolyFeature);
> 		wfs_polygon.redraw();
> 		}
>
> Seems like it creates no features on polygon-Layer.
>
>
>
> --
> View this message in context: http://osgeo-org.1560.n6.nabble.com/Multipolygon-to-Polygons-tp5003436p5003469.html
> Sent from the OpenLayers Users mailing list archive at Nabble.com.
> _______________________________________________
> Users mailing list
> Users at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/openlayers-users
>


-- 
--------------------------------------------------
Slawomir Messner
Forschungszentrum "Deutscher Sprachatlas"
06421-28-24981

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/openlayers-users/attachments/20120921/ff2e3183/attachment.html>


More information about the Users mailing list