Не удается получить данные Panoramio с помощью API
Я пытаюсь получить панорамное изображение вокруг заданной координаты. Однако всегда мой запрос возвращает ноль фотографий. Это код, который я использую.
const double WGS84_a = 6378137.0;
const double WGS84_b = 6356752.3;
double Deg2rad(double degrees) {
return degrees * M_PI / 180.0;
}
double Rad2deg(double radians) {
return radians * 180.0 / M_PI;
}
double WGS84EarthRadius(double lat)
{
double An = WGS84_a*WGS84_a * cos(lat);
double Bn = WGS84_b*WGS84_b * sin(lat);
double Ad = WGS84_a * cos(lat);
double Bd = WGS84_b * sin(lat);
return sqrt( (An*An + Bn*Bn)/(Ad*Ad + Bd*Bd) );
}
MapRect LatLonDestPoint(CLLocationCoordinate2D origin, double halfSideInKm) {
double lat = Deg2rad(origin.latitude);
double lon = Deg2rad(origin.longitude);
double halfSide = 1000*halfSideInKm;
double radius = WGS84EarthRadius(lat);
double pradius = radius*cos(lat);
double latMin = lat - halfSide/radius;
double latMax = lat + halfSide/radius;
double lonMin = lon - halfSide/pradius;
double lonMax = lon + halfSide/pradius;
return MKMapRectMake(Rad2deg(latMin), Rad2deg(lonMin), Rad2deg(latMax), Rad2deg(lonMax));
}
Теперь для координаты (60.1190935704,-149.439081366) я получаю API как
Это всегда возвращает мне ноль результатов. Пожалуйста, помогите мне с тем, что я делаю неправильно.
1 ответ
Решение
У вас есть координаты X и Y неправильно.
Обменять эти возвраты: -
{ "Считать":379,"has_more": правда,"map_location":{"лат":60.118290103595498,"LON":-149.45469385385852,"panoramio_zoom":6}
так далее
ps не полагайтесь на правильность подсчета. Используйте флаг has_more.