MapView ================= .. currentmodule:: axioma.gui .. class:: MapView Класс-окно просмотра карты Унаследован от: :class:`ScrollItemView` .. py:method:: MapView() Конструктор .. py:method:: MapView(map, parent=None) Конструктор :param map: Отображаемая карта :type map: :class:`~axioma.render.Map` :param parent: Родительский объект :type parent: :class:`~PyQt5.QtCore.QObject` или :any:`None` Конструктор .. py:method:: MapView(map, mapRect, parent=None) :param map: Отображаемая карта :type map: :class:`~axioma.render.Map` :param mapRect: Участок карты для показа :type mapRect: :class:`~axioma.core.dp.GeoRect` :param parent: Родительский объект :type parent: :class:`~PyQt5.QtCore.QObject` или :any:`None` .. py:method:: showAll() Показ всех данных исходя из существующего контента карты .. py:method:: map() Отображаемая карта :return: Карта :rtype: :class:`~axioma.render.Map` .. py:method:: viewport() Область видимости карты :return: MapViewport :rtype: :class:`~axioma.render.MapViewport` .. py:method:: rootLayerGroup() Корневая группа слоев карты. :return: Группа слоев :rtype: :class:`~axioma.render.RootLayerGroup` .. py:method:: editableLayer() Редактируемый слой :return: Слой или :any:`None` в случае, если редактируемого слоя нет :rtype: :class:`~axioma.render.Layer` .. py:method:: cosmeticLayer() Косметический слой :return: Слой или :any:`None` в случае, если косметический слой отсутствует :rtype: :class:`~axioma.render.TableLayer` .. py:method:: setViewport(viewport, preserveY=True, saveHistory=True) Смена области видимости :param viewport: Новое значение MapViewport :type viewport: :class:`~axioma.render.MapViewport` :param preserveY: Не менять цену градуса по широте для СК Широта/Долгота :type preserveY: :class:`bool` :param saveHistory: Сохранить в истории данную операцию :type saveHistory: :class:`bool` .. py:method:: scaleWithCenter(zoomCoef, center) Масштабирование и смена центра карты :param zoomCoef: Коэффициент масштабирования :type zoomCoef: :class:`float` :param center: Новый центр карты :type center: :class:`~PyQt5.QtCore.QPointF` .. py:method:: setViewportByRect(rect) Установка новой области видимости по прямоугольнику :param rect: Прямоугольник :type rect: :class:`~PyQt5.QtCore.QRectF` .. py:method:: coordinateUnit() Единицы измерения координат в окне карты :return: Единицы измерения :rtype: :class:`~axioma.cs.LinearUnit` .. py:method:: setCoordinateUnit(coordinateUnit) Установка нового значения единиц измерения координат в окне карты :param coordinateUnit: Новое значение :type coordinateUnit: :class:`~axioma.cs.LinearUnit` .. py:method:: distanceUnit() Единицы измерения расстояний в окне карты :return: Единицы измерения :rtype: :class:`~axioma.cs.LinearUnit` .. py:method:: setDistanceUnit(distanceUnit) Установка нового значения единиц измерения расстояний в окне карты :param distanceUnit: Новое значение единиц измерений :type distanceUnit: :class:`~axioma.cs.LinearUnit` .. py:method:: areaUnit() Единицы измерения площадей в окне карты :return: Единицы измерения :rtype: :class:`~axioma.cs.LinearUnit` .. py:method:: setAreaUnit(areaUnit) Установка нового значения единиц измерения площадей в окне карты :param areaUnit: Новое значение единиц измерений :type areaUnit: :class:`~axioma.cs.LinearUnit` .. py:method:: mapUnits() Возвращает контейнер с установленными единицами измерения карты :rtype: :class:`~axioma.cs.MapUnits` .. py:method:: setMapUnits(mapUnits) Переустанавливает контейнер с единицами измерения для карты :param mapUnits: Переопределяемое значение контейнера :type mapUnits: :class:`~axioma.cs.MapUnits` .. py:method:: followSelection() Производится ли автофокусировка на карте при выделении соответствующего значения в списке. Т.е. выбранная область располагается в центре окна карты :return: True, если да. В противном случае False :rtype: bool .. py:method:: setFollowSelection(val) Установка необходимости проведения автофокусировки в окне карты :param val: Новое значение :type val: :class:`bool` .. py:method:: addLegend(group) Добавление новой легенды :param group: Контейнер с легендой :type group: :class:`~axioma.render.LegendItemGroup` .. py:method:: legendManager() Менеджер легенд, привязанный к текущему окну :return: Менеджер легенд :rtype: :class:`~axioma.gui.LegendManager` .. py:method:: allTableLayers() Список всех векторных слоев :return: Список слоев :rtype: :class:`list` [:class:`~axioma.render.TableLayer`] .. py:method:: allTableLayersWithoutCosmetic() Список всех векторных слоев за исключением косметического :return: Список слоев :rtype: :class:`list` [:class:`~axioma.render.TableLayer`] .. py:method:: allLayersWithSelection() Список всех векторных слоев, имеющих на данный момент выделение :return: Список слоев :rtype: :class:`list` [:class:`~axioma.render.TableLayer`] .. py:method:: allLayersWithTarget() Список всех векторных слоев, имеющих на данный момент выделение :return: Список слоев :rtype: :class:`list` [:class:`~axioma.render.TableLayer`] .. py:method:: hasTarget() Имеется ли на карте изменяемый объект :return: True, если да. В противном случае False :rtype: :class:`bool` .. py:method:: hasSelection() Имеется ли на карте выбранные объекты :return: True, если да. В противном случае False :rtype: :class:`bool` .. py:method:: hasVisibleSelection() Имеется ли на карте выбранные объекты, попадающие в текущий момент в область видимости :return: True, если да. В противном случае False :rtype: :class:`bool` .. py:method::hidden: name() static QList validCoordinateUnits(const std::shared_ptr &cs); .. py:method::hidden: name() QList validCoordinateUnits() const; .. py:method::hidden: name() MapViewport scaleViewport(const MapViewport& vp, bool adjust = false); .. py:method::hidden: name() int numStandardLayers() const; .. py:method:: isCurrentMapView() Является ли данное окно текущим в приложении :return: True, если да. В противном случае False :rtype: :class:`bool` .. py:method:: selectionAsCursor() Возвращает выделенное в окне в виде итератора :return: Итератор :rtype: :class:`~axioma.core.dp.Cursor` .. py:method:: name() Наименование окна :return: Наименование :rtype: :class:`str` .. py:method:: setName(newName) Установка нового наименования для окна :param newName: Новое наименование :type newName: :class:`str` .. py:method:: itemFromFeature(tableLayer, feature) Получение элемента окна по записи таблицы слоя :param tableLayer: Слой, где будет произведен поиск записи :type tableLayer: :class:`~axioma.render.TableLayer` :param feature: Запись в таблице :type feature: :class:`~axioma.core.dp.Feature` :return: Результирующий элемент :rtype: :class:`~axioma.gui.Item` .. method:: mouseMoved(mousePosition) [signal] Сигнал испускается при изменении текущего положения курсора в окне :param mousePosition: Положение курсора :type mousePosition: :class:`~PyQt5.QtCore.QPointF` .. method:: zoomChanged(zoom) [signal] Сигнал испускается после смены масштаба :param zoom: Масштаб :type zoom: :class:`float` .. method:: scaleChanged(scale) [signal] Сигнал испускается после смены ширины карты :param scale: Новая ширина :type scale: :class:`float` .. method:: sceneChanged(sceneRectWidth) [signal] Сигнал испускается после смены ширины карты :param sceneRectWidth: Новая ширина прямоугольника проекции карты :type sceneRectWidth: :class:`float` .. method:: editableLayerChanged() [signal] Сигнал испускается при смене редактируемого слоя .. method:: unitsChanged() [signal] Сигнал испускается при смене единиц измерения .. method:: coordSystemChanged() [signal] Сигнал испускается при смене координатной системы карты .. method:: tableDataChanged() [signal] Сигнал испускается при изменении данных в таблицах, на базе которых созданы слои .. py:method:: showSelection() [slot] Если есть выборка, карта позиционируется на нее .. py:method:: changeProjection() [slot] Показ диалога смены проекции .. py:method:: setPreviousViewport() [slot] Если есть история показа, переход к предыдущему состоянию .. py:method:: clearCosmeticLayer() [slot] Очистить косметический слой .. py:method:: showScrollBar() Показывать ли полосу прокрутки для окна карты. По-умолчанию используется значение из настроек :class:`~axioma.gui.GuiSettingsManager.showScrollOnMapView` :rtype: :class:`bool` .. py:method:: setShowScrollBar(show) [slot] Устанавливает для окна карты показывать ли полосы прокрутки. :param show: Переопределяемое значение :type show: :class:`bool`