Based on the reasons from the beginning of this chapter, our main focus is on attribute management. However, we cannot get past the geometry part without a word. In this example, called ch04_geometry
, we pull out the swiss army knife of modifying geometries in OpenLayers 3. As we made a note of issues with the coordinate order in GeoServer, we swap the coordinates of a whole layer. Note that, for now, we only modify the geometries internally. We will do some visual and GUI modifications in the next chapter:
var modifiedFeatures = []; var features = this.getFeatures(); for (var i = 0; i < features.length; i += 1) { var modifiedFeature = features[i].clone(); modifiedFeature.getGeometry().applyTransform(function (flatCoordinates, flatCoordinates2, stride) { for (var j = 0; j < flatCoordinates.length; j += stride) { var y = flatCoordinates[j]; var x = flatCoordinates[j + 1]; flatCoordinates[j] = x; ...