feat: масштабный рефакторинг архитектуры AIS карты и UI компонентов

Новые векторные иконки:
- cog.xml: иконка шестеренки для настроек
- compass.xml: иконка компаса для навигации
- ownship.xml: иконка собственного судна
- targetlist.xml: иконка списка целей с текстом 'LIST'

Архитектурные изменения:
- MainActivity.java: +99/- строк - обновление UI логики
- AppController.java: +111/- строк - рефакторинг контроллера приложения
- MapLibreMapImpl.java: +525/- строк - значительные улучшения карты
- MapInterface.java: +10 строк - расширение интерфейса карты
- CursorOverlay.java: +329/- строк - улучшение курсора и оверлеев
- GeoUtils.java: +92 строк - новые гео-утилиты
- NavigationUtils.java: +81/- строк - оптимизация навигации
- VesselPathTracker.java: +18/- строк - улучшение трекинга судов
- MapForgeImpl.java, YandexMapImpl.java: обновления карт

UI изменения:
- activity_main.xml: +65/- строк - обновление главного layout
- cursor.xml: +16/- строк - улучшение курсора
- targetlist.xml: +39 строк - обновление иконки списка целей

Общий объем: +1087/-328 строк
Подготовка к новой архитектуре UI и картографических компонентов
This commit is contained in:
2025-10-06 08:33:13 +03:00
parent 932ca5f05f
commit 982e940b8d
23 changed files with 1680 additions and 329 deletions
+43
View File
@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="_Слой_2" data-name="Слой_2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 233.17 233.87">
<defs>
<style>
.cls-1 {
fill: #fff;
font-family: Roboto-Black, Roboto;
font-size: 31px;
font-weight: 800;
}
.cls-2 {
fill: none;
}
.cls-3 {
stroke: #000;
stroke-miterlimit: 10;
}
.cls-4 {
clip-path: url(#clippath);
}
</style>
<clipPath id="clippath">
<rect class="cls-2" width="233.17" height="233.87"/>
</clipPath>
</defs>
<g id="_Слой_17" data-name="Слой_17">
<g class="cls-4">
<g>
<rect class="cls-3" x=".5" y=".5" width="233" height="53" rx="26.2" ry="26.2"/>
<rect class="cls-3" x=".5" y="60.39" width="233" height="53" rx="26.2" ry="26.2"/>
<rect class="cls-3" x=".5" y="120.28" width="233" height="53" rx="26.2" ry="26.2"/>
<rect class="cls-3" x=".5" y="180.17" width="233" height="53" rx="26.2" ry="26.2"/>
</g>
</g>
<text class="cls-1" transform="translate(78.07 36.01)"><tspan x="0" y="0">MMSI</tspan></text>
<text class="cls-1" transform="translate(80.32 95.1)"><tspan x="0" y="0">COG</tspan></text>
<text class="cls-1" transform="translate(81.32 157.1)"><tspan x="0" y="0">SOG</tspan></text>
<text class="cls-1" transform="translate(98.98 208.1)"><tspan x="0" y="0">...</tspan></text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB