У меня есть такая карта тайлов. Я хотел бы знать значения 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)
});