我正在尝试显示一个矢量图层来显示一组geojson特征。
当我尝试添加图层时虽然我在ol.js库中遇到错误“k.xd不是函数”
var geoData = {"type":"FeatureCollection",
"features":
[
{"type":"Feature","properties":{"Name":"","Description":""},"geometry":{"type":"Point","coordinates":[0.0,0.0]}},
{"type":"Feature","properties":{"Name":"1","Description":""},"geometry":{"type":"Point","coordinates":[11.50728,3.87471,0.0]}},
]
};
// vector layer
var vector = new ol.layer.Vector({
source: new ol.source.Vector({
features: (new ol.format.GeoJSON()).readFeatures(geoData)
}),
style: new ol.style.Style({
stroke: new ol.style.Stroke({
color: 'red',
width: 2
}),
fill: new ol.style.Fill({
color: 'rgba(255,0,0,0.2)'
})
})
});
我已将这里的一个示例http://jsfiddle.net/dxt95yt6/1/整合在一起,表明它不起作用,但我无法弄清楚它与原始教程的不同之处。
答案 0 :(得分:1)
鉴于风格对象对点不正确,因此功能不会显示出来。尝试:
#include <stdio.h>
#define MOD 1000000007
#define MAX 44721
int main(void) {
long long int test, i, j, n, m, x;
long long int *store = malloc(1000009 * sizeof(*store));
long long int *a = malloc(1000006 * sizeof(*a));
scanf("%lld", &test);
for (i = 0; i < 1000006; i++) {
store[i] = 1LL;
}
a[0] = 1;
for (j = 1; j < 1000006; j++) {
for (i = 1; i < MAX; i++) {
if (i % 2 == 0) {
store[i] = (store[i - 1] + store[i]) % MOD;
}
}
a[j] = store[MAX - 1];
}
printf("%lld", a[1]);
return 0;
}
请注意,在原始代码中,还有另一个问题。坐标必须转换为EPSG:3857:
style: new ol.style.Style({
image: new ol.style.Circle({
radius: 8,
stroke: new ol.style.Stroke({
color: 'red',
width: 2
}),
fill: new ol.style.Fill({
color: 'rgba(255,0,0,0.2)'
})
})
})
答案 1 :(得分:0)
在使用之前验证geojson总是有帮助的。我可以推荐geojsonlint,它有一个api,以确保你使用正确的geojson。
答案 2 :(得分:0)
这个jsfiddle示例jsfiddle.net/zqx6644q/无法正常工作......这两个点是在0 lat 0 lon处绘制的。我正试图解决这个问题。