VS Code Windows

Настройка

Visual Studio Code - кроссплатформенная среда разработки с бесплатной лицензией. Ее можно скачать с официального сайта: Visual Studio Code.

Перед началом в установленной Visual Studio Code необходимо установить расширение Python. Это можно сделать во вкладке Extensions (Ctrl+Shift+X).

Создадим папку с проектом axioma_hello_world.

Хорошей практикой при разработке на языке Python является создание виртуального окружения virtualenv. В командной строке (Ctrl+`) Visual Studio Code выполним:

"C:\Program Files\Axioma v5\bin\python\python.exe" -m venv .venv --system-site-packages

Примечание

Расположение установленной ГИС Аксиома может отличаться.

Важно

Обязательно использовать Python, поставляемый вместе с ГИС Аксиома.

Создастся виртуальное окружение в папке .venv. Visual Studio Code сразу найдет эту папку и предложит использовать ее окружение для текущего проекта.

Чтобы убедиться, что окружение работает корректно, выведем версию интерпретатора Python; создадим простой стартовый скрипт и увидим, что ГИС Аксиома запускается из среды разработки:

Содержимое файла start_axioma.py
from axipy import init_axioma, mainwindow

app = init_axioma(load_python_plugins=True)
mainwindow.show()
app.exec_()
Версия интерпретатора Python.
python --version
../../_images/version.png

Создадим простой модуль:

axioma_hello_world  # папка с проектом
├── ru_axioma_gis_axipy_example_plugin_minimal  # модуль
│   ├── __init__.py
│   └── manifest.ini
└── start_axioma.py  # стартовый скрипт

См.также

Раздел Модули.

Совет

Готовый скрипт start_axioma.py и пример плагина ru_axioma_gis_axipy_example_plugin_minimal можно найти в папке с установленной ГИС Аксиома.

Содержимое файла manifest.ini
name=Пример модуля axipy - Минимальный
description=Модуль для демонстрации возможностей разработки на Python
Содержимое файла __init__.py
 1from PySide2.QtWidgets import QMessageBox
 2from axipy import AxiomaPlugin, Position
 3
 4
 5class Plugin(AxiomaPlugin):
 6    def load(self):
 7        self.__action = self.create_action('Пример действия',
 8                icon='://icons/share/32px/run3.png', on_click=self.show_message)
 9        position = Position('Основные', 'Команды')
10        position.add(self.__action)
11        self.__action.action.setToolTip('Всплывающая подсказка')
12
13    def unload(self):
14        self.__action.remove()
15
16    def show_message(self):
17        QMessageBox.information(None, 'Сообщение',
18                'Пример выполнения действия по нажатию кнопки')

Запустим ГИС Аксиома из скрипта start_axioma.py и в диалоге Модули -> Настройки добавим путь к нашему проекту с модулем. Найдем его в списке найденных модулей и загрузим (можно сравнить действительное расположение модуля). Так образом можно продолжать разрабатывать этот модуль, выгружая и загружая его вновь после внесения изменений.

Важно

Чтобы изменения вступили в силу, необходимо выгрузить и повторно загрузить модуль.

Отладка

Проект готов для того, чтобы отлаживать модуль, ставя точки останова в коде. Для удобства можно создать конфигурацию для отладки, которая будет сама запускать стартовый скрипт. Создайте конфигурацию для отладки - Visual Studio Code создаст файл launch.json. Стартовый скрипт есть в папке с установленной ГИС Аксиома. Можно указать путь сразу к нему, и убрать из проекта с модулем.

../../_images/launcher.png

Теперь при запуске этой конфигурации можно отлаживать модуль, ставя точки останова, анализируя стек вызовов и содержимое переменных.

../../_images/debug.png