UNPKG

openlayers

Version:

Build tools and sources for developing OpenLayers based mapping applications

69 lines (62 loc) 2.31 kB
goog.provide('ol.geom.flat.inflate'); /** * @param {Array.<number>} flatCoordinates Flat coordinates. * @param {number} offset Offset. * @param {number} end End. * @param {number} stride Stride. * @param {Array.<ol.Coordinate>=} opt_coordinates Coordinates. * @return {Array.<ol.Coordinate>} Coordinates. */ ol.geom.flat.inflate.coordinates = function(flatCoordinates, offset, end, stride, opt_coordinates) { var coordinates = opt_coordinates !== undefined ? opt_coordinates : []; var i = 0; var j; for (j = offset; j < end; j += stride) { coordinates[i++] = flatCoordinates.slice(j, j + stride); } coordinates.length = i; return coordinates; }; /** * @param {Array.<number>} flatCoordinates Flat coordinates. * @param {number} offset Offset. * @param {Array.<number>} ends Ends. * @param {number} stride Stride. * @param {Array.<Array.<ol.Coordinate>>=} opt_coordinatess Coordinatess. * @return {Array.<Array.<ol.Coordinate>>} Coordinatess. */ ol.geom.flat.inflate.coordinatess = function(flatCoordinates, offset, ends, stride, opt_coordinatess) { var coordinatess = opt_coordinatess !== undefined ? opt_coordinatess : []; var i = 0; var j, jj; for (j = 0, jj = ends.length; j < jj; ++j) { var end = ends[j]; coordinatess[i++] = ol.geom.flat.inflate.coordinates( flatCoordinates, offset, end, stride, coordinatess[i]); offset = end; } coordinatess.length = i; return coordinatess; }; /** * @param {Array.<number>} flatCoordinates Flat coordinates. * @param {number} offset Offset. * @param {Array.<Array.<number>>} endss Endss. * @param {number} stride Stride. * @param {Array.<Array.<Array.<ol.Coordinate>>>=} opt_coordinatesss * Coordinatesss. * @return {Array.<Array.<Array.<ol.Coordinate>>>} Coordinatesss. */ ol.geom.flat.inflate.coordinatesss = function(flatCoordinates, offset, endss, stride, opt_coordinatesss) { var coordinatesss = opt_coordinatesss !== undefined ? opt_coordinatesss : []; var i = 0; var j, jj; for (j = 0, jj = endss.length; j < jj; ++j) { var ends = endss[j]; coordinatesss[i++] = ol.geom.flat.inflate.coordinatess( flatCoordinates, offset, ends, stride, coordinatesss[i]); offset = ends[ends.length - 1]; } coordinatesss.length = i; return coordinatesss; };