Files
AndroidAisMap/rawAssets/SVG/SVG/Engine.svg
T
Grigo b5aee265bc feat: новая архитектура UI и расширенная визуализация AIS
Архитектурные улучшения:
- Внедрен UIRenderingCoordinator с централизованным throttling
- Решены проблемы зависания UI через батчинг операций карты
- Добавлен VesselPathController для отслеживания маршрутов
- Реализован MapLibreMapImpl как альтернатива Яндекс.Картам

Визуализация AIS:
- Добавлены векторные иконки для всех типов судов
- Разделение Class A/B судов с соответствующими иконками
- Иконки навигационных статусов (anchor, moored, engine, sail)
- Улучшенный CursorOverlay с информацией о судах

Производительность:
- Throttling UI обновлений (vessel: 500ms, AIS: 1s, paths: 2s)
- Устранение утечек Handler объектов
- Оптимизация GeoJSON операций в MapLibre
2025-10-02 09:15:33 +03:00

47 lines
2.2 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<svg id="_Слой_2" data-name="Слой_2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 62.24 62.18">
<defs>
<style>
.cls-1 {
stroke-width: 4px;
}
.cls-1, .cls-2 {
fill: #fff;
stroke: #000;
stroke-miterlimit: 10;
}
.cls-2 {
stroke-width: 4px;
}
</style>
</defs>
<g id="_Слой_9" data-name="Слой_9">
<circle class="cls-2" cx="30.66" cy="31.22" r="6"/>
<g>
<path class="cls-2" d="M27.25,41.64l-9.4,7.49c-2.27,1.81-5.4,2.07-7.94.66l-1.42-.78c-2.91-1.61-2.83-5.83.15-7.32l7.01-3.52,11.59,3.47Z"/>
<path class="cls-2" d="M19.94,31.19l-10.03-6.62c-2.42-1.6-3.64-4.5-3.08-7.34l.31-1.59c.63-3.27,4.67-4.49,7.01-2.12l5.51,5.58.28,12.1Z"/>
<path class="cls-2" d="M27.61,21l3.2-11.58c.77-2.79,3.15-4.85,6.03-5.2l1.61-.2c3.3-.41,5.71,3.05,4.18,6.01l-3.6,6.97-11.42,4.01Z"/>
<path class="cls-2" d="M39.68,25.15l12.01-.54c2.9-.13,5.59,1.5,6.81,4.13l.68,1.47c1.41,3.02-1.14,6.37-4.42,5.83l-7.74-1.27-7.34-9.62Z"/>
<path class="cls-2" d="M39.46,37.91l4.22,11.25c1.02,2.71.3,5.78-1.82,7.75l-1.18,1.1c-2.43,2.27-6.41.89-6.92-2.4l-1.18-7.75,6.88-9.95Z"/>
</g>
<g>
<g id="_x3C_Радиальное_повторение_x3E_">
<path class="cls-1" d="M57.93,41.9l-2.71,4.16s3.31-2.54,2.71-4.16Z"/>
</g>
<g id="_x3C_Радиальное_повторение_x3E_-2" data-name="_x3C_Радиальное_повторение_x3E_">
<path class="cls-1" d="M29.15,59.9l-4.8-1.29s3.44,2.36,4.8,1.29Z"/>
</g>
<g id="_x3C_Радиальное_повторение_x3E_-3" data-name="_x3C_Радиальное_повторение_x3E_">
<path class="cls-1" d="M3.13,38.09l-.25-4.96s-1.19,4,.25,4.96Z"/>
</g>
<g id="_x3C_Радиальное_повторение_x3E_-4" data-name="_x3C_Радиальное_повторение_x3E_">
<path class="cls-1" d="M15.84,6.6l4.64-1.77s-4.17.11-4.64,1.77Z"/>
</g>
<g id="_x3C_Радиальное_повторение_x3E_-5" data-name="_x3C_Радиальное_повторение_x3E_">
<path class="cls-1" d="M49.71,8.96l3.12,3.87s-1.39-3.93-3.12-3.87Z"/>
</g>
</g>
</g>
</svg>