Установка палитры для рисования растра.
#include <gis/gis_mdp.h>int gis_mdp_set_raster_palette( gis_mdp_t mdp_ctx, const uint32_t *colors, uint32_t color_number );
gishelper
Функция устанавливает палитру рисования растровых карт.
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 );vector<uint32_t> colorMap;colorMap.clear();colorMap.push_back( 0x00004030 );colorMap.push_back( 0x00186424 );colorMap.push_back( 0x0048AC0C );colorMap.push_back( 0x00ACC800 );colorMap.push_back( 0x00D0E000 );colorMap.push_back( 0x00F4F800 );colorMap.push_back( 0x00E4C400 );colorMap.push_back( 0x00D29A00 );colorMap.push_back( 0x00C07000 );colorMap.push_back( 0x00AE4600 );colorMap.push_back( 0x00A22A00 );if ( gis_mdp_set_raster_palette( mdp_ctx, colorMap.data(), colorMap.size() ) != EOK ){printf( "Failed to set palette\n" );return 1;}uint32_t *get_palette;uint32_t number_of_colors;if ( ( get_palette = gis_mdp_get_raster_palette( mdp_ctx, &number_of_colors ) ) != NULL ){if ( *get_palette != 0x00004030 ||*(get_palette + 1) != 0x00186424 ){printf( "Failed to get palette\n" );return 1;}}free( get_palette );
ПК ЦКИ для ЗОСРВ «Нейтрино»
gis_mdp_t, gis_mdp_get_raster_palette(), gis_mdp_set_raster_color_mode()
Предыдущий раздел: Описание API картографического фреймворка