Необходимо поворачивать векторную карту на фиксированное значение угла: 0, 90, 180 и 270 градусов. Для этого использую функцию:
Код |
---|
_MAPIMP double _MAPAPI mapSetupTurn(HMAP hmap, double angle, double fixation); |
Значения angle задаю:
Код |
---|
0, M_PI / 2, M_PI, 3 * M_PI / 2 |
И постоянное значение fixation: M_PI / 18.
Однако карта рисуется адекватно только при значениях 0 и M_PI градусов, при всех остальных в зависимости от изменения масштаба карта перерисовывается с артефактами, без большинства слоёв и объектов.
Данное поведение наблюдается в "ГИС Конструктор Free для Qt Designer" как на версии:
Код |
---|
// Версия библиотеки MapAccess
// (если применяется "mapacces.h" и т.п.)
#define MAPACCESSVERSION 20160418
// Версия интерфейса MAPAPI и ядра библиотеки
#define MAPAPIVERSION 0x0111302 |
Так и на:
Код |
---|
// Версия библиотеки MapAccess
// (если применяется "mapacces.h" и т.п.)
#define MAPACCESSVERSION 20160605
// Версия интерфейса MAPAPI и ядра библиотеки
#define MAPAPIVERSION 0x0111304 |
Использовал карту Подольска и пару бесплатных карт на основе OSM с сайта.