Remove dimension option from KML parser

Geometry constructors now accept coordinates in any dimension
This commit is contained in:
Tim Schaub
2013-09-25 16:57:07 +02:00
parent 1aa83e133b
commit ce6fd5ab36
5 changed files with 5 additions and 10 deletions

View File

@@ -32,7 +32,7 @@ var style = new ol.style.Style({
var vector = new ol.layer.Vector({ var vector = new ol.layer.Vector({
source: new ol.source.Vector({ source: new ol.source.Vector({
parser: new ol.parser.KML({dimension: 2}), parser: new ol.parser.KML(),
url: 'data/kml/2012_Earthquakes_Mag5.kml' url: 'data/kml/2012_Earthquakes_Mag5.kml'
}), }),
style: style style: style

View File

@@ -54,7 +54,7 @@ var style = new ol.style.Style({
var vector = new ol.layer.Vector({ var vector = new ol.layer.Vector({
source: new ol.source.Vector({ source: new ol.source.Vector({
parser: new ol.parser.KML({dimension: 2}), parser: new ol.parser.KML(),
url: 'data/kml/timezones.kml' url: 'data/kml/timezones.kml'
}), }),
style: style style: style

View File

@@ -22,7 +22,7 @@ var raster = new ol.layer.Tile({
var vector = new ol.layer.Vector({ var vector = new ol.layer.Vector({
source: new ol.source.Vector({ source: new ol.source.Vector({
parser: new ol.parser.KML({ parser: new ol.parser.KML({
maxDepth: 1, dimension: 2, extractStyles: true, extractAttributes: true maxDepth: 1, extractStyles: true, extractAttributes: true
}), }),
url: 'data/kml/lines.kml' url: 'data/kml/lines.kml'
}) })

View File

@@ -412,8 +412,6 @@
/** /**
* @typedef {Object} ol.parser.KMLOptions * @typedef {Object} ol.parser.KMLOptions
* @property {number|undefined} dimension Create geometries with `dimension`
* dimensions. Default is 3.
* @property {boolean|undefined} extractAttributes Should we extract attributes * @property {boolean|undefined} extractAttributes Should we extract attributes
* from the KML? Default is `true´. * from the KML? Default is `true´.
* @property {boolean|undefined} extractStyles Should we extract styles from the * @property {boolean|undefined} extractStyles Should we extract styles from the

View File

@@ -52,8 +52,6 @@ ol.parser.KML = function(opt_options) {
options.extractStyles : false; options.extractStyles : false;
this.schemaLocation = 'http://www.opengis.net/kml/2.2 ' + this.schemaLocation = 'http://www.opengis.net/kml/2.2 ' +
'http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd'; 'http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd';
// TODO re-evaluate once shared structures support 3D
this.dimension = goog.isDef(options.dimension) ? options.dimension : 3;
this.maxDepth = goog.isDef(options.maxDepth) ? options.maxDepth : 0; this.maxDepth = goog.isDef(options.maxDepth) ? options.maxDepth : 0;
this.trackAttributes = goog.isDef(options.trackAttributes) ? this.trackAttributes = goog.isDef(options.trackAttributes) ?
options.trackAttributes : null; options.trackAttributes : null;
@@ -263,8 +261,7 @@ ol.parser.KML = function(opt_options) {
for (var i = 0, ii = coords.length; i < ii; i++) { for (var i = 0, ii = coords.length; i < ii; i++) {
var array = coords[i].replace(reg.removeSpace, '').split(','); var array = coords[i].replace(reg.removeSpace, '').split(',');
var pair = []; var pair = [];
var jj = Math.min(array.length, this.dimension); for (var j = 0, jj = array.length; j < jj; j++) {
for (var j = 0; j < jj; j++) {
pair.push(parseFloat(array[j])); pair.push(parseFloat(array[j]));
} }
coordArray.push(pair); coordArray.push(pair);
@@ -544,7 +541,7 @@ ol.parser.KML = function(opt_options) {
'coord': function(node, container) { 'coord': function(node, container) {
var str = this.getChildValue(node); var str = this.getChildValue(node);
var coords = str.replace(this.regExes.trimSpace, '').split(/\s+/); var coords = str.replace(this.regExes.trimSpace, '').split(/\s+/);
for (var i = 0, ii = this.dimension; i < ii; ++i) { for (var i = 0, ii = coords.length; i < ii; ++i) {
coords[i] = parseFloat(coords[i]); coords[i] = parseFloat(coords[i]);
} }
var point = { var point = {