gis_data_engine_get_maps_projection()

Получение информации о проекции отображения.

Прототип:

#include <gis/gisrender.h>
int gis_data_engine_get_maps_projection( gis_data_engine_context_t ctx, double_point_t *center_pnt, gis_map_projection_t *out_proj );

Аргументы:

ctx
Указатель на контекст движка рендеринга.
center_pnt
Указатель на центральную точку.
out_proj
Проекция карт.

Библиотека:

gisrender

Описание:

Функция позволяет получить информацию о проекции карты, которой принадлежит точка center_pnt.

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

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

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

gis_core_connection_t connection;
gis_data_engine_context_t ctx;
uint32_t width = 100;
uint32_t height = 100;
gis_core_link_init( &connection );
gis_core_link_connect( &connection, 777 );
gis_core_databuffer_attach( &connection );
if ( gis_data_engine_alloc( width, height, GIS_DATA_ENGINE_MODE_SM, GIS_DATA_ENGINE_BPP_32, &connection, &ctx ) != EOK ) {
printf( "gis_data_engine_alloc() failed.\n" );
return 1;
}
gis_map_projection_t proj_params;
double_point_t center;
center.x = 39.91;
center.y = 45.74;
gis_map_projection_init( &proj_params );
gis_data_engine_get_maps_projection( ctx, &center, &proj_params );
if ( proj_params.projection_idx == 5 &&
proj_params.ellipsoid_idx == 3 &&
proj_params.EPSG == 0 )
{
printf( "Correct\n" );
}
else
{
printf( "Incorrect parameters: %d %d %d\n", proj_params.projection_idx,
proj_params.ellipsoid_idx,
proj_params.EPSG );
}
gis_data_engine_free( &ctx );
gis_core_databuffer_detach();
gis_core_link_destroy( &connection, true );

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

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

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

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

gis_data_engine_context_t, gis_map_projection_t, gis_data_engine_set_canvas_size()




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