将 geojson 多点功能加载并解析到 openlayers 3
load and parse geojson multipoint feature into openlayers 3
我正在尝试将仅包含一个多点特征的 geoJSON 文件的部分加载到不同的数组中,以便在我的 OpenLayers 应用程序中使用,但我无法正确加载和解析代码。这是语法问题。我的 geoJSON 文件具有以下结构:
{
"type": "Feature",
"geometry": {
"type": "MultiPoint",
"coordinates": [
[
243.19,
31.81
],
[
243.05,
31.84
],
...
[
141.3,
38.51
]
]
},
"properties": {
"active": "12 Nov 2005 22:00 - 14 Jul 2006 22:00",
"species": "Bluefin Tuna",
"id": "100508400",
"sex": "unknown"
"time": [
1124432402,
1124434321,
...
1144737900
]
}
}
我正在尝试通过 Ajax/JQuery 加载 geoJSON,并将多点坐标解析为一个数组,将时间坐标解析为一个数组,并提取一些 属性 值。
var BT100508400Coords = [],
BT100508400Time = [],
id, species;
$.getJSON('data/BT100508400.geojson').done(function (data) {
$(data).each(function () {
BT100508400Coords.push(data.geometry.coordinates);
BT100508400Time.push(data.properties.time);
id = data.properties.id;
species = data.properties.species;
}).done(function () {
makeLineString(id, species, BT100508400Coords, BT100508400Time);
}).fail(function () {
console.log("BT100508400 multipointCoords not populated");
});
});
这个尝试与我在这里尝试的那个很接近:
但我稍微改变了我的目标,具体来说,我的 GeoJSON 文件需要包含一个多点特征。我似乎无法为单个多点特征编写语法,而不是该答案中建议的特征集合。
非常感谢。
each
没有 return 具有 done
方法的值。所以,基本上,只需像下面这样更改代码:
var BT100508400Coords = [],
BT100508400Time = [],
id, species;
$.getJSON('data/BT100508400.geojson').done(function (data) {
$(data).each(function () {
BT100508400Coords.push(data.geometry.coordinates);
BT100508400Time.push(data.properties.time);
id = data.properties.id;
species = data.properties.species;
})
makeLineString(id, species, BT100508400Coords, BT100508400Time);
});
我正在尝试将仅包含一个多点特征的 geoJSON 文件的部分加载到不同的数组中,以便在我的 OpenLayers 应用程序中使用,但我无法正确加载和解析代码。这是语法问题。我的 geoJSON 文件具有以下结构:
{
"type": "Feature",
"geometry": {
"type": "MultiPoint",
"coordinates": [
[
243.19,
31.81
],
[
243.05,
31.84
],
...
[
141.3,
38.51
]
]
},
"properties": {
"active": "12 Nov 2005 22:00 - 14 Jul 2006 22:00",
"species": "Bluefin Tuna",
"id": "100508400",
"sex": "unknown"
"time": [
1124432402,
1124434321,
...
1144737900
]
}
}
我正在尝试通过 Ajax/JQuery 加载 geoJSON,并将多点坐标解析为一个数组,将时间坐标解析为一个数组,并提取一些 属性 值。
var BT100508400Coords = [],
BT100508400Time = [],
id, species;
$.getJSON('data/BT100508400.geojson').done(function (data) {
$(data).each(function () {
BT100508400Coords.push(data.geometry.coordinates);
BT100508400Time.push(data.properties.time);
id = data.properties.id;
species = data.properties.species;
}).done(function () {
makeLineString(id, species, BT100508400Coords, BT100508400Time);
}).fail(function () {
console.log("BT100508400 multipointCoords not populated");
});
});
这个尝试与我在这里尝试的那个很接近:
但我稍微改变了我的目标,具体来说,我的 GeoJSON 文件需要包含一个多点特征。我似乎无法为单个多点特征编写语法,而不是该答案中建议的特征集合。
非常感谢。
each
没有 return 具有 done
方法的值。所以,基本上,只需像下面这样更改代码:
var BT100508400Coords = [],
BT100508400Time = [],
id, species;
$.getJSON('data/BT100508400.geojson').done(function (data) {
$(data).each(function () {
BT100508400Coords.push(data.geometry.coordinates);
BT100508400Time.push(data.properties.time);
id = data.properties.id;
species = data.properties.species;
})
makeLineString(id, species, BT100508400Coords, BT100508400Time);
});