mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-29 19:28:47 -05:00
9c7aa8b333
Allow OpenSkyNetwork DB, OpenAIP and OurAirports DB stuctures to be shared by different plugins, to speed up loading. Perform map anti-aliasing on the whole map, rather than just info boxes, to improve rendering speed when there are many items. Add map multisampling as a preference. Add plotting of airspaces, airports, navaids on Map feature. Add support for polylines and polygons to be plotted on Map feature. Add support for images to 2D Map feature. Add distance and name filters to Map feature. Filter map items when zoomed out or if off screen, to improve rendering performance. Add UK DAB, FM and AM transmitters to Map feature. Use labelless maps for 2D transmit maps in Map feature (same as in ADS-B demod).
649 lines
22 KiB
XML
649 lines
22 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>MapSettingsDialog</class>
|
|
<widget class="QDialog" name="MapSettingsDialog">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>1267</width>
|
|
<height>648</height>
|
|
</rect>
|
|
</property>
|
|
<property name="font">
|
|
<font>
|
|
<pointsize>9</pointsize>
|
|
</font>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Map Display Settings</string>
|
|
</property>
|
|
<layout class="QVBoxLayout" name="verticalLayout">
|
|
<item>
|
|
<widget class="QGroupBox" name="groupBox">
|
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
|
<property name="topMargin">
|
|
<number>0</number>
|
|
</property>
|
|
<item>
|
|
<widget class="QTabWidget" name="tabWidget">
|
|
<property name="currentIndex">
|
|
<number>0</number>
|
|
</property>
|
|
<widget class="QWidget" name="mapsTab">
|
|
<attribute name="title">
|
|
<string>Maps</string>
|
|
</attribute>
|
|
<layout class="QVBoxLayout" name="verticalLayout_3">
|
|
<item>
|
|
<widget class="QGroupBox" name="map2DSettings">
|
|
<property name="title">
|
|
<string>2D Map Settings</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="formLayout_2">
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="map2DEnabledLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Enabled</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QCheckBox" name="map2DEnabled">
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="mapProviderLabel">
|
|
<property name="text">
|
|
<string>Map provider</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QComboBox" name="mapProvider">
|
|
<property name="toolTip">
|
|
<string>Select map provider</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>OpenStreetMap</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>ESRI</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Mapbox</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>MapboxGL</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>MapLibre</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="osmURLLabel">
|
|
<property name="text">
|
|
<string>OSM Custom URL</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QLineEdit" name="osmURL">
|
|
<property name="toolTip">
|
|
<string>URL of custom map for use with OpenStreetMap provider</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="mapBoxStylesLabel">
|
|
<property name="text">
|
|
<string>MapboxGL Styles</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QLineEdit" name="mapBoxStyles">
|
|
<property name="toolTip">
|
|
<string>Comma separated list of MapBox styles</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QGroupBox" name="map3DSettings">
|
|
<property name="title">
|
|
<string>3D Map Settings</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="formLayout">
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="map3DEnabledLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Enabled</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QCheckBox" name="map3DEnabled">
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="terrainLabel">
|
|
<property name="text">
|
|
<string>Terrain</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QComboBox" name="terrain">
|
|
<item>
|
|
<property name="text">
|
|
<string>Cesium World Terrain</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Ellipsoid</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Maptiler</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>ArcGIS</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="buildingsLabel">
|
|
<property name="text">
|
|
<string>Buildings</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QComboBox" name="buildings">
|
|
<item>
|
|
<property name="text">
|
|
<string>None</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Cesium OSM Buildings</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="sunLightEnabledLabel">
|
|
<property name="text">
|
|
<string>Lighting</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QComboBox" name="sunLightEnabled">
|
|
<property name="toolTip">
|
|
<string>Whether lighting is from the Sun or Camera</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>Camera</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Sun</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="eciCameraLabel">
|
|
<property name="text">
|
|
<string>Camera reference frame</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QComboBox" name="eciCamera">
|
|
<property name="toolTip">
|
|
<string>Selects camera reference frame. For ECEF the camera rotates with the Earth. For ECI, the camera position is fixed relative to the stars and the Earth's rotation will be visible.</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>ECEF</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>ECI</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="0">
|
|
<widget class="QLabel" name="antiAliasingLabel">
|
|
<property name="text">
|
|
<string>Anti-aliasing</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="1">
|
|
<widget class="QComboBox" name="antiAliasing">
|
|
<property name="toolTip">
|
|
<string>Set anti-aliasing to use. This can remove jagged pixels on the edge of 3D models.</string>
|
|
</property>
|
|
<item>
|
|
<property name="text">
|
|
<string>None</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>FXAA</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="verticalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Vertical</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>20</width>
|
|
<height>40</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
<item>
|
|
<widget class="QPushButton" name="downloadModels">
|
|
<property name="toolTip">
|
|
<string>Download 3D models. It is recommended to restart SDRangel after download.</string>
|
|
</property>
|
|
<property name="text">
|
|
<string>Download 3D Models (1.6GB)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QToolButton" name="getAirportDB">
|
|
<property name="toolTip">
|
|
<string>Download the latest OurAirports airport databases (10MB)</string>
|
|
</property>
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="icons.qrc">
|
|
<normaloff>:/map/icons/controltower.png</normaloff>:/map/icons/controltower.png</iconset>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QToolButton" name="getAirspacesDB">
|
|
<property name="toolTip">
|
|
<string>Download airspaces and NAVAIDs from OpenAIP (40MB)</string>
|
|
</property>
|
|
<property name="text">
|
|
<string/>
|
|
</property>
|
|
<property name="icon">
|
|
<iconset resource="icons.qrc">
|
|
<normaloff>:/map/icons/vor.png</normaloff>:/map/icons/vor.png</iconset>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="horizontalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>40</width>
|
|
<height>20</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<widget class="QWidget" name="mapItemsTab">
|
|
<attribute name="title">
|
|
<string>Map Items</string>
|
|
</attribute>
|
|
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
|
<item>
|
|
<widget class="QTableWidget" name="mapItemSettings">
|
|
<property name="selectionMode">
|
|
<enum>QAbstractItemView::NoSelection</enum>
|
|
</property>
|
|
<column>
|
|
<property name="text">
|
|
<string>Enabled</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether items of this type will be displayed on the maps</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>2D Icon</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether to display icon on 2D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>2D Label</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether to display label on 2D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>2D Min Zoom</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>2D Colour</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Track colour or 2D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Model</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether to display model on 3D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Min Pixels</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Label</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether to display label on 3D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Point</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Whether to display a point on 3D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Colour</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>3D Label Scale</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Scale factor for label on 3D map</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Filter Name</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Regular expression to filter by name (Only items with names matching the pattern will be displayed)</string>
|
|
</property>
|
|
</column>
|
|
<column>
|
|
<property name="text">
|
|
<string>Filter Distance (km)</string>
|
|
</property>
|
|
<property name="toolTip">
|
|
<string>Filter objects further than this distance in km away from My Position</string>
|
|
</property>
|
|
</column>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<widget class="QWidget" name="apiKeysTab">
|
|
<attribute name="title">
|
|
<string>API Keys</string>
|
|
</attribute>
|
|
<layout class="QVBoxLayout" name="verticalLayout_4">
|
|
<item>
|
|
<widget class="QGroupBox" name="apiKeys">
|
|
<property name="title">
|
|
<string>API Keys</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="formLayout_3">
|
|
<item row="0" column="0">
|
|
<widget class="QLabel" name="thunderforestAPIKeyLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Thunderforest API Key</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="1">
|
|
<widget class="QLineEdit" name="thunderforestAPIKey">
|
|
<property name="toolTip">
|
|
<string>Enter a Thunderforest API key in order to use non-watermarked Thunderforest maps: https://www.thunderforest.com/</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="0">
|
|
<widget class="QLabel" name="maptilerAPIKeyLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Maptiler API Key</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="1" column="1">
|
|
<widget class="QLineEdit" name="maptilerAPIKey">
|
|
<property name="toolTip">
|
|
<string>Enter a Maptiler API key in order to use Maptiler maps: https://www.maptiler.com/</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="mapBoxAPIKeyLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Mapbox API Key</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<widget class="QLineEdit" name="mapBoxAPIKey">
|
|
<property name="toolTip">
|
|
<string>Enter a Mapbox API key in order to use Mapbox maps: https://www.mapbox.com/</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="0">
|
|
<widget class="QLabel" name="cesiumIonAPIKeyLabel">
|
|
<property name="minimumSize">
|
|
<size>
|
|
<width>140</width>
|
|
<height>0</height>
|
|
</size>
|
|
</property>
|
|
<property name="text">
|
|
<string>Cesium Ion API Key</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="3" column="1">
|
|
<widget class="QLineEdit" name="cesiumIonAPIKey">
|
|
<property name="toolTip">
|
|
<string>Enter a Cesium Ion Access Token</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="checkWXAPIKeyLabel">
|
|
<property name="text">
|
|
<string>CheckWX API key</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QLineEdit" name="checkWXAPIKey">
|
|
<property name="toolTip">
|
|
<string>checkwxapi.com API key for accessing airport weather (METARs)</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="QDialogButtonBox" name="buttonBox">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="standardButtons">
|
|
<set>QDialogButtonBox::Cancel|QDialogButtonBox::Ok</set>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<tabstops>
|
|
<tabstop>map2DEnabled</tabstop>
|
|
<tabstop>mapProvider</tabstop>
|
|
<tabstop>osmURL</tabstop>
|
|
<tabstop>mapBoxStyles</tabstop>
|
|
<tabstop>map3DEnabled</tabstop>
|
|
<tabstop>terrain</tabstop>
|
|
<tabstop>buildings</tabstop>
|
|
<tabstop>sunLightEnabled</tabstop>
|
|
<tabstop>eciCamera</tabstop>
|
|
<tabstop>antiAliasing</tabstop>
|
|
<tabstop>downloadModels</tabstop>
|
|
<tabstop>thunderforestAPIKey</tabstop>
|
|
<tabstop>maptilerAPIKey</tabstop>
|
|
<tabstop>mapBoxAPIKey</tabstop>
|
|
<tabstop>cesiumIonAPIKey</tabstop>
|
|
</tabstops>
|
|
<resources>
|
|
<include location="../../../sdrgui/resources/res.qrc"/>
|
|
<include location="icons.qrc"/>
|
|
</resources>
|
|
<connections>
|
|
<connection>
|
|
<sender>buttonBox</sender>
|
|
<signal>accepted()</signal>
|
|
<receiver>MapSettingsDialog</receiver>
|
|
<slot>accept()</slot>
|
|
<hints>
|
|
<hint type="sourcelabel">
|
|
<x>248</x>
|
|
<y>254</y>
|
|
</hint>
|
|
<hint type="destinationlabel">
|
|
<x>157</x>
|
|
<y>274</y>
|
|
</hint>
|
|
</hints>
|
|
</connection>
|
|
<connection>
|
|
<sender>buttonBox</sender>
|
|
<signal>rejected()</signal>
|
|
<receiver>MapSettingsDialog</receiver>
|
|
<slot>reject()</slot>
|
|
<hints>
|
|
<hint type="sourcelabel">
|
|
<x>316</x>
|
|
<y>260</y>
|
|
</hint>
|
|
<hint type="destinationlabel">
|
|
<x>286</x>
|
|
<y>274</y>
|
|
</hint>
|
|
</hints>
|
|
</connection>
|
|
</connections>
|
|
</ui>
|