У меня возникли проблемы с API Карт Google . У меня есть массив, который содержит объект, который я создал для хранения точек.
Мой массив и класс:
var tPoints = [];
function tPoint(name) {
var id = name;
var points = [];
var pointsCount = 0;
...
this.getHeadPoint = function() { return points[pointsCount-1]; }
}
tPoint содержит массив GLatLng точек. Я хочу написать функцию, которая будет возвращать объект GLatLngBounds , который расширен от границ текущей карты, чтобы показать все HeadPoints.
Вот что у меня есть до сих пор ..
function getBounds() {
var mBound = map.getBounds();
for (var i = 0; i < tPoints.length; i++) {
alert(mBound.getSouthWest().lat() + "," + mBound.getSouthWest().lng());
alert(mBound.getNorthEast().lat() + "," + mBound.getNorthEast().lng());
currPoint = trackMarkers[i].getHeadPoint();
if (!mBound.containsLatLng(currPoint)) {
mBound.extend(currPoint);
}
}
return mBound;
}
, который возвращает эти значения для предупреждения. (В основном по США)
"19,64258, NaN"
"52,69636, NaN"
"i = 0"
"19.64258, NaN"
"52.69636, -117.20701"
"i = 1"
Я не знаю, почему мне возвращают NaN.
Когда я использую границы для получения уровня масштабирования, я думаю, что значение NaN заставляет map.getBoundsZoomLevel (границы) возвращать 0, что неверно. Я неправильно использую GLatLngBounds ?