Closed AlexShilkin closed 4 years ago
Скажите пожалуйста, зачем для расчета координат полигонов Вы используете методы worldToXY? Что значит замедляется отрисовка в 8-10 раз и как Вы это измеряете? Сколько точек в полигонах?
Мне нужно на карте нарисовать правильный многоугольник, если использовать обычные координаты для многоугольника и потом добавлять полигон на карту то он вытягивается. Поэтому я рисую многоугольник в плоских координатах а потом преобразую их в мировые. worldToXY используется чтобы преобразовать координату центра в плоские координаты.
Замерял время отрисовки простыми логами.
println(startTime) yandexMap.mapObjects.addPolygon(polygon) println(currentTime-startTime)
Также замерял время в профайлере. Порядок времени для метода addPolygon оставался примерно такой же.
В полигоне пробовал разное количество точек от 5 до 16. Время не очень сильно отличалось.
А какие абсолютные значения времени исполнения addPolygon?
Они отличаются: Время в миллисекундах 1341 1013 788 487 978 314
При первом вызове addPolygon время всегда максимальное.
Используется версия библиотеки 3.3.1, в 3.4.0 написано "Улучшена производительность на arm64". В этом наверное проблема? Нужно обновить и посмотреть как будет работать.
Проблема заключалась в версии 3.3.1. При обновлении на версию 3.4.0 проблем с отрисовкой не наблюдается.
Тестовые девайсы: Nokia 6.1, Android 10 Huawei ANE LX1, Android 9
Условия: Отрисовываю полигоны (правильные n-угольники). При расчете координат используются методы worldToXY, worldToXY Wgs84Mercator. Создаются несколько полигонов yandexMap.mapObjects.addPolygon(polygon).
При использование armeabi-v7a на устройствах быстро отрисовываются полигоны, если использовать arm64-v8a отрисовка замедляется примерно в 8-10 раз.
Подскажите пожалуйста в чем может быть причина?