我的代码显示了来自GeoJSON的标记,当我放大到10级时,它加载了GeoJSON文件,但是我如何避免重新输出相同的标记?有没有办法检查在特定的地方是否已经存在一个标记?代码
map.events.register("zoomend", null, function(){
if(map.zoom == 10)
{
var bounds = map.getExtent();
console.log(bounds);
var ne = new OpenLayers.LonLat(bounds.right,bo
我正在尝试设计LineString的样式,但它似乎不起作用。这是我的代码:
function connectStationFeatures(feat1, feat2){
var lineLayer = getLinesLayer();
var point1 = feat1.geometry;
var point2 = feat2.geometry;
var style = new OpenLayers.StyleMap({
'fillColor':"#FF8C00",
'strokeWidt
目前,我正在尝试更改用户关注的矢量层的特定功能的图标。我将每个要素添加到地图中,如下所示:
var point = new OpenLayers.Geometry.Point(pt.lon, pt.lat);
var markerStyle = OpenLayers.Util.extend(OpenLayers.Feature.Vector.style['default'], {
externalGraphic: iconURL
});
var marker = new OpenLayers.Feature.Vector(point, attributes, mark
我正在使用OpenLayers创建一个允许用户在其上绘图的地图。绘图选项是从官方文档中实现的,并且确实有效。https://openlayers.org/en/latest/examples/draw-features.html 我试着给用户一个删除他以前的绘图的选项。按住"A“键可以看到用户选择。现在,这个选定的图形应该在释放键的瞬间被删除(但没有发生任何事情)。 var select = new Select();
window.addEventListener('keydown', function (event) {
// A
if (eve
我正在开发一个用于交通分配的QGIS插件(版本2.8.1),我想在其中显示每个时间步的模拟结果。现在我正在使用时间管理器插件,但是当我的层有数十万个属性时,它会变得非常慢。在我的例子中,我确切地知道我想在每个时间步显示什么功能ID,所以我想让它更快会很容易。
下面是我尝试过的(对不起,我的python编程方式,但我对这种语言还不熟悉):在循环的每个时间步,我设置要显示的属性索引的有序列表(在我的例子中,它们始终是有序的)。
# TEST 1 -----------------------------------
for step in time_steps:
index
我想将"EPSG:900913“设置为OpenLayers地图的投影,但当我尝试时,总是得到"EPSG:4326”。
function init() {
var options = {
projection: new OpenLayers.Projection("EPSG:4326") // ignored
};
map = new OpenLayers.Map('map', options);
var layer = new OpenLayers.Layer.OSM.Osmaren
我已经做了一整天了,老实说,我已经没有主意了。我有一些WMS图层,我希望根据当前缩放级别显示/不显示这些图层。是的,我已经看过了API文档,它们看起来很清楚,但我遵循了所有建议,但我没有得到想要的结果:(
这是我看过的来源之一:
更糟糕的是,我发现如果你有一个在加载时显示的开放街道地图基础图层,它似乎限制了你对地图的numZoomLevels的控制,这正是我需要的,因为我确实想使用它作为我的加载基础图层……
所以我的问题是:
我做错了什么?在加载时使用Open Street Map基础图层时,真的没有解决缩放级别控制的方法吗?还是有什么我不知道的?
以下是我的一些代码尝试: Take 1: t
(我已经搜索了的帖子,但没有太多成功。它们似乎只能通过事件来解决问题。)
我们的网站是使用qTip2的工具提示,我想有弹出的功能在我的矢量层。为了方便起见,我想使用qTip2工具提示而不是openlayers弹出窗口(这样我们就可以使用自己的样式了)。
在创建特征时,我需要对DOM对象的引用,以便可以将qTip2工具提示附加到它:
function onFeatureCreate(feature){
var elem=?
$(elem).qTip2(...);
}
如果我有来自层的特性,我如何获得DOM对象?
我在Openlayers.js文件中收到一个错误,如下所述:
"TypeError: a.geometry.getBounds is not a function"
[Break On This Error]
...=this.resolution||this.map.getResolution()},drawFeature:function(a,b){null==b&&(...
如果有人知道解决方案,请帮助我解决这个问题。
我有一张地图,其中'EPSG:32639‘投影用于基本地图,'EPSG:4326’投影用于显示在基本地图上的kml层。它只显示我的底图,不显示任何kml图层。这有什么问题吗?
我的源码是。
function initMap(){
// if this is just a coverage or a group of them, disable a few items,
// and default to jpeg format
format = 'image/png';
salam,我在打印我的地图时遇到了一个问题,当我显示结果时,我发现只有一个20的特征。结果并不包含所有特征。我使用esri/dijit/PrintTask
verifier: function(){ //verifier() is an onClick event of a button
var url= 'the way/arcgis/rest/services/Utilities/PrintingTools/GPServer/Export%20Web%20Map%20Task';
var printTask=new PrintTask(url);
var params =
我正在尝试设置在OpenLayers地图中显示XYZ源的最小缩放比例,但每当我设置它时,整个地图都会出现内存问题并崩溃。maxZoom运行得很好。 我最初在React中使用OpenLayers,但在遇到这个问题后,我尽可能地减少了它,看看我是否可以修复它(我不能)。下面是我的代码: import 'ol/ol.css';
import {Map, View} from 'ol';
import TileLayer from 'ol/layer/Tile';
import OSM from 'ol/source/OSM';
imp
嗨,我需要在地图上显示一些shapefile,因为我使用geoserver,openlayers和谷歌地图V3,它的工作方式我不使用OpenLayers.Layer.Google,我可以看到我的shapefile。这是我的工作代码:
var map = new OpenLayers.Map('map');
var ghyb = new OpenLayers.Layer.Google(
"Google Hybrid",
{type: google.maps.MapTypeId.HYBRID, numZoomLevels: 30,srs:'EPSG:2077
如何在一个组中添加两个或多个层,以便我可以在layerswitcher中看到它们,并可以选择或取消选择所有!?
下面是我的代码:
var line_1 = new OpenLayers.Layer.Vector(" Line no - 1", {
visibility: true,
projection: dproj,
strategies: [new OpenLayers.Strategy.Fixed()],