Javascript 开放层6-图像层与矢量层结合
我试图将图像层与向量层结合起来,但当我添加投影以查看向量时,向量消失了。我做错什么了吗 以下是我试图实现的一个示例: 我希望下面的这两层在视图中结合在一起Javascript 开放层6-图像层与矢量层结合,javascript,image,gis,openlayers,openlayers-6,Javascript,Image,Gis,Openlayers,Openlayers 6,我试图将图像层与向量层结合起来,但当我添加投影以查看向量时,向量消失了。我做错什么了吗 以下是我试图实现的一个示例: 我希望下面的这两层在视图中结合在一起 对于那些搜索答案的人,给出了一个很好的解决方案,其中设置的范围值等于向量层的延伸。再次感谢你 var extent = [-e,-e,e,e]; var source = new VectorSource({}); var vectorLayer = new VectorLayer({ source: source, }); v
对于那些搜索答案的人,给出了一个很好的解决方案,其中设置的范围值等于向量层的延伸。再次感谢你
var extent = [-e,-e,e,e];
var source = new VectorSource({});
var vectorLayer = new VectorLayer({
source: source,
});
var imageLayer = new ImageLayer({
source: new Static({
url: "https://imgs.xkcd.com/comics/online_communities.png",
projection: new Projection({
units: "pixels",
extent: extent
}),
imageExtent: extent,
}),
});
vectorLayer.setZIndex(1);
imageLayer.setZIndex(0);
var olMap = new Map({
target: null,
layers: [imageLayer, vectorLayer],
view: new View({
projection: new Projection({
units: "pixels",
extent: extent,
}),
center: getCenter(extent),
// center: [0,0],
zoom: 0,
}),
});
class App extends Component {
componentDidMount() {
olMap.setTarget("olmap");
vectorLayer.getSource().addFeatures(features);
}
render() {
return (
<div className="App">
<div id="olmap" style={{ width: "100%", height: "80%" }} />
</div>
);
}
}
他还分享了一个stackblitz:你不太可能看到任何东西,因为你有50个特征随机分布在4500000个单位上,而图像只有2048个单位。如果将两个区段设置为相似,则特征将与图像重叠。我理解您的意思,但即使我更改,它们也不在正确的位置。那我该怎么办呢?范围=[-e,-e,e,e];将符合图像中的所有特征,你是对的。这确实起到了作用。非常感谢你!