Я тестирую добавление набора запрещенных зон к моему маршруту через ЗДЕСЬ iOS SDK.(Я использую iOS
Premium SDK).Однако я заметил, что после 20 вызовов AddBannedArea вся дополнительная информация отбрасывается.Есть ли жесткое ограничение на количество забаненных территорий?Если так, как бы я добавил больше?
Вот фрагмент кода тестирования, который я использовал.В 19 последний геополигон все еще распознается и его избегают при маршрутизации.Однако, если я увеличу цикл до 20, последний геополигон и все последующие геополигоны игнорируются.
NMADynamicPenalty *penalty = [[NMADynamicPenalty alloc] init];
for (int w = 0; w < 19; w++){
float latitude = 29 + (w / 5) + (arc4random_uniform(100) / 100.0);
float longitude = -66 - w - (arc4random_uniform(100) / 100.0);
NMAGeoCoordinates *topRight = [[NMAGeoCoordinates alloc] initWithLatitude:latitude longitude:longitude];
NMAGeoCoordinates *topLeft = [[NMAGeoCoordinates alloc] initWithLatitude:latitude longitude:(longitude - 0.25)];
NMAGeoCoordinates *bottomRight = [[NMAGeoCoordinates alloc] initWithLatitude:(latitude - 0.25) longitude:longitude];
NMAGeoCoordinates *bottomLeft = [[NMAGeoCoordinates alloc] initWithLatitude:(latitude - 0.25) longitude:(longitude - 0.25)];
NMAGeoPolygon *polygon = [[NMAGeoPolygon alloc] init];
[polygon addPoint:topRight];
[polygon addPoint:topLeft];
[polygon addPoint:bottomLeft];
[polygon addPoint: bottomRight];
NMAMapPolygon *mapPolyGon = [[NMAMapPolygon alloc] initWithPolygon:polygon];
[penalty addBannedArea:mapPolyGon];
}
NMAGeoCoordinates *topRight = [[NMAGeoCoordinates alloc] initWithLatitude:40.147209 longitude:-74.648863];
NMAGeoCoordinates *topLeft = [[NMAGeoCoordinates alloc] initWithLatitude:40.145059 longitude:-74.726632];
NMAGeoCoordinates *bottomRight = [[NMAGeoCoordinates alloc] initWithLatitude:40.074601 longitude:-74.649898];
NMAGeoCoordinates *bottomLeft = [[NMAGeoCoordinates alloc] initWithLatitude:40.079852 longitude:-74.735551];
NMAGeoPolygon *polygon = [[NMAGeoPolygon alloc] init];
[polygon addPoint:topRight];
[polygon addPoint:topLeft];
[polygon addPoint:bottomLeft];
[polygon addPoint: bottomRight];
NMAMapPolygon *mapPolyGon = [[NMAMapPolygon alloc] initWithPolygon:polygon];
[penalty addBannedArea:mapPolyGon];
РЕДАКТИРОВАТЬ: ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Я направляюсь из Дувра (широта: 39,1582, длинна: -75,5244) в Нью-Йорк (широта: 40,7128, длинна: 74,0060).
Я установил 19 случайных запрещенных областей и одну область запрета на тестирование с блоком, состоящим из
NMAGeoCoordinates *topRight = [[NMAGeoCoordinates alloc] initWithLatitude:40.147209 longitude:-74.648863];
NMAGeoCoordinates *topLeft = [[NMAGeoCoordinates alloc] initWithLatitude:40.145059 longitude:-74.726632];
NMAGeoCoordinates *bottomRight = [[NMAGeoCoordinates alloc] initWithLatitude:40.074601 longitude:-74.649898];
NMAGeoCoordinates *bottomLeft = [[NMAGeoCoordinates alloc] initWithLatitude:40.079852 longitude:-74.735551];
. Этот блок создает и область к северу от TWP Мэнсфилда на I-97.
Если до 20 лет, тогда я получу правильный уклонение от этого
Однако, более 20, поэтому установка контура на 21+, и точка полностью игнорируется, в результате чего.