gis_mdp_set_projection()

Установка проекции текущего отображения карты.

Прототип:

#include <gis/gis_mdp.h>
int gis_mdp_set_projection( gis_mdp_t mdp_ctx, gis_map_projection_t *projection );

Аргументы:

mdp_ctx
Контекст gis_mdp_t.
parameters
Указатель на структуру параметров проекции тип gis_map_projection_t

Библиотека:

gishelper

Описание:

Функция устанавливает проекцию текущего отображения карты.

Возвращаемое значение:

EOK
Успешное завершение.
EINVAL
Некорректные параметры функции.

Примеры использования:

gis_mdp_t mdp_ctx;
gis_data_engine_context_t ctx;
gis_core_connection_t connection;
gis_core_link_init( &connection );
gis_core_link_connect( &connection, 777 );
gis_core_databuffer_attach( &connection );
uint32_t width = 600;
uint32_t height = 600;
gis_data_engine_alloc( width, height, GIS_DATA_ENGINE_MODE_SM, GIS_DATA_ENGINE_BPP_32, &connection, &ctx );
mdp_ctx = gis_data_engine_get_display_parameters( ctx );
gis_map_projection_t projection;
gis_map_projection_init( &projection );
projection.projection_idx = GIS_PROJECTION_GAUSS_KRUGER_CONFORMAL;
projection.ellipsoid_idx = GIS_ELLIPSOID_KRASSOVSKY_1942;
projection.zone = 7;
if ( gis_mdp_set_projection( mdp_ctx, &projection ) != EOK ) {
printf( "Failed to set projection\n" );
return 1;
}
gis_map_projection_t *proj = gis_mdp_get_projection( mdp_ctx );
if ( proj->projection_idx != GIS_PROJECTION_GAUSS_KRUGER_CONFORMAL &&
proj->ellipsoid_idx != GIS_ELLIPSOID_KRASSOVSKY_1942 &&
proj->zone != 7 )
{
printf( "Incorrect projection parameters\n" );
return 1;
}

Классификация:

ПК ЦКИ для ЗОСРВ «Нейтрино»

Безопасность использования
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Да

Тематические ссылки:

gis_mdp_t, gis_mdp_get_projection(), gis_mdp_set_center_point()




Предыдущий раздел: Описание API картографического фреймворка