Как узнать, попадают ли координаты в пределы плитки? - PullRequest
0 голосов
/ 30 августа 2018

У меня есть такая карта тайлов. Я хотел бы знать значения lat и long (41.850033, -87.6500523), внутри которых tileBounds находится?

Получаю значения границ плитки для каждой плитки. но я не знаю, как проверить, находится ли широта в диапазоне определенного значения tileBound. как найти?

вот рабочая копия моего кода

http://jsfiddle.net/doktormolle/55Nke/

<code> var div = ownerDocument.createElement('div');
  div.innerHTML = 
'<pre><strong>tile:\n['+tile.x+','+tile.y+']</strong>\
\nbounds:{\nsw:['+tileBounds.sw.lat+','+tileBounds.sw.lng+'],\
\nne:['+tileBounds.ne.lat+','+tileBounds.ne.lng+']\n}
'; div.style.width = this.tileSize.width + 'px'; div.style.height = this.tileSize.height + 'px'; div.style.fontSize = '10'; div.style.borderStyle = 'solid'; div.style.borderWidth = '1px'; div.style.borderColor = '#AAAAAA'; if (lat === 41.850033 && lng === -87.6500523) {// если значения широты и долготы внутри границ этого тайла устанавливают красный цвет div.style.backgroundColor = 'красный'; } вернуть div; };

как проверить здесь, лежат ли мои широта и долгота внутри tileBounds.sw и tileBounds.ne?

var setTileBackground = 
this.mapDataPoints.some(function(el){
 return (tileBounds.sw.lat  <= el.latitude <= tileBounds.ne.lat && tileBounds.sw.lng <= el.longitude <= tileBounds.ne.lng)
            })    // never returns true ...

Я решил свою проблему с помощью этой проверки

var setTileBackground = this.mapDataPoints.some(function(el){
 return (el.latitude > tileBounds.sw.lat && el.latitude < tileBounds.ne.lat  && el.longitude > tileBounds.sw.lng && 
 el.longitude < tileBounds.ne.lng)
                    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...