O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Тисячі позначок на карті мобільного додатку. Кластеризація в iOS.

421 visualizações

Publicada em

Доповідач Костя Колесник,
Провідний iOS розробник студії stfalcon.com

Publicada em: Software
  • Seja o primeiro a comentar

Тисячі позначок на карті мобільного додатку. Кластеризація в iOS.

  1. 1. Тисячі об'єктів на карті мобільного додатку. Кластеризація в iOS.
  2. 2. Навіщо воно мені здалось??
  3. 3. Задача • Анімована кластеризація об'єктів на карті додатку
  4. 4. Задача • Анімована кластеризація об'єктів на карті додатку • Реалізація кластеризації з підтримкою GooglMapsSDK.
  5. 5. Існуючі рішення в iOS • Superpin - швидкий і платний, без анімації • Kingpin - безкоштовний, з підтримкою анімації, але повільний і трохи глючний • DTClusterMaker - також платний Основна проблема: відсутність підтримки GoogleMapsSDK
  6. 6. Методи кластеризації • Метод k-середніх (групування по мінімальному сумарному квадратичному відхиленню від центру кластеру) • Групування по сітці (розбиття видимої області на регіони, формування кластерів з їх вмісту)
  7. 7. Метод k-середніх
  8. 8. Метод k-середніх • На практиці повільний • Складність виконання анімації, маркерів
  9. 9. Кластериація за допомогою групування об'єктів по сітці • Формування нових кластерів при переміщенні карти. • Анімація кластерів • Видалення старих кластерів
  10. 10. Визначення розміру видимої області
  11. 11. Пошук лівого нижнього кута
  12. 12. Побудова кластерів
  13. 13. Дуже повільно...
  14. 14. Трошки оптимізовуєм
  15. 15. Знову створюєм кластери
  16. 16. Вже швидше!
  17. 17. А якщо ще більше об'єктів?!
  18. 18. Квадратичне дерево
  19. 19. Квадратичне дерево
  20. 20. Квадратичне дерево • Набагато швидший процес формування кластерів при навігації • Потрібно більше часу на початку для побудови дерева
  21. 21. Анімація маркерів
  22. 22. Новий кластер є частиною старого кластера
  23. 23. Старий кластер є частиною нового кластера
  24. 24. Дякую за увагу! Запитання?
  25. 25. • tiko@stfalcon.com • https://github.com/utiko/ClusterTest

×