1.
mappicex.h
// Загрузка растровых данных из файла BMP в файл RSW
// BmpName - имя BMP-файла;
// RstName - имя RSW-файла;
// meterInElementX - размер в метрах элемента по X
// meterInElementY - размер в метрах элемента по Y
// point - точка привязки растра (в метрах)
// (положение юго-западного угла растра в районе)
// handle - HWND диалога визуального сопровождения процесса обработки.
// compression - флаг сжатия изображения
// 0 - сжатие к блокам изображения применяться не будет
// 1 - блоки д.б. сжаты по методу LZW
// 2 - блоки д.б. сжаты по методу JPEG (справедливо для 24 битных растров)
// При ошибке возвращает ноль
//
_PICIMP long int _PICAPI picexLoadBmpToRstAndCompressUn(HMESSAGE handle,
const WCHAR *BmpName,
const WCHAR *RstName,
double* meterInElementX,
double* meterInElementY,
DOUBLEPOINT *point,
int compression);
rstapi.h
// Установить данные о проекции растра
// hMap - идентификатор открытых данных
// number - номер файла в цепочке
// Структуры MAPREGISTEREX, DATUMPARAM, ELLIPSOIDPARAM описаны в mapcreat.h
// ttype - тип локального преобразования координат (см. TRANSFORMTYPE в mapcreat.h) или 0
// tparm - параметры локального преобразования координат (см. mapcreat.h)
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapSetRstProjectionDataPro(HMAP hMap, int number,
MAPREGISTEREX *mapregister,
DATUMPARAM *datumparam,
ELLIPSOIDPARAM *ellipsoidparam,
long int ttype,
LOCALTRANSFORM * tparm);
// Записать изменения растра в файл
// hMap - идентификатор открытой векторной карты
// number - номер файла в цепочке
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapSaveRst(HMAP hMap,long int number);
2.
mapapi.h
// Открыть данные с автоматическим определением их типа
// (векторные,растровые,матричные...)
// name - имя открываемого файла (MAP, SIT, MTW, RSW, MPT) в кодировке UNICODE
// mode - режим чтения/записи (GENERIC_READ, GENERIC_WRITE или 0)
// GENERIC_READ - все данные только на чтение, при этом не открываются
// файлы \Log\name.log и \Log\name.tac - протокол работы и журнал транзакций
// error - после выполнения функции переменная содержит код ошибки
// (когда HMAP равен 0) или 0; коды ошибок приведены в maperr.rh
// password - пароль доступа к данным из которого формируется 256-битный код
// для шифрования данных (при утрате пароля данные не восстанавливаются)
// size - длина пароля в байтах !!!
// Передача пароля необходима, если при создании карты он был указан.
// Если пароль не передан, а он был указан при создании,
// то автоматически вызывается диалог scnGetMapPassword из mapscena.dll (gisdlgs.dll)
// Если выдача сообщений запрещена (mapIsMessageEnable()), то диалог
// не вызывается, а при отсутствии пароля происходит отказ открытия данных
// При ошибке возвращает ноль
_MAPIMP HMAP _MAPAPI mapOpenAnyData(const WCHAR *name, long int mode = 0, long int *error = 0);
3.
mappicex.h
// Преобразование растра к заданной проекции
// handle - диалог визуального сопровождения процесса обработки.
// namein - имя исходного растра;
// nameout - имя выходного растра;
// mapreg - адрес структуры с данными о заданной проекции
// (описание структуры MAPREGISTEREX см в mapcreate.h);
// datum - параметры пересчета геодезических координат с заданного эллипсоида
// на эллипсоид WGS-84 (может быть ноль),
// ellparam - параметры пользовательского эллипсоида (может быть ноль).
// ttype - тип локального преобразования координат (см. TRANSFORMTYPE в mapcreat.h) или 0
// tparm - параметры локального преобразования координат (см. mapcreat.h)
// Диалогу визуального сопровождения процесса обработки посылаются сообщения WM_PROGRESSBAR/WM_PROGRESSBARUN:
// Извещение об изменении состояния процесса, WPARAM - текущее состояние процесса в процентах (0% - 100%)
// Если функция-отклик возвращает WM_PROGRESSBAR/WM_PROGRESSBARUN, то процесс завершается.
// hEvent - адрес функции обратного вызова для уведомлении о процессе
// eventparam - параметры функции обратного вызова
// При ошибке возвращает ноль,
// код ошибки возвращается функцией picexGetLastError() (коды ошибок см. maperr.rh)
_PICIMP long int _PICAPI RswProjectionReformingEvent(HMESSAGE handle, const WCHAR * namein,
const WCHAR * nameout, MAPREGISTEREX * mapreg,
DATUMPARAM * datum,
ELLIPSOIDPARAM* ellparam,
long int ttype,
LOCALTRANSFORM * tparm,
EVENTCALL hEvent,
void *eventparam);
_PICIMP long int _PICAPI RswProjectionReformingEx(HMESSAGE handle, const char * namein,
const char * nameout, MAPREGISTEREX * mapreg,
DATUMPARAM * datum,
ELLIPSOIDPARAM* ellparam);
_PICIMP long int _PICAPI RswProjectionReformingExUn(HMESSAGE handle, const WCHAR * namein,
const WCHAR * nameout, MAPREGISTEREX * mapreg,
DATUMPARAM * datum,
ELLIPSOIDPARAM* ellparam);
_PICIMP long int _PICAPI RswProjectionReformingPro(HMESSAGE handle, const WCHAR * namein,
const WCHAR * nameout, MAPREGISTEREX * mapreg,
DATUMPARAM * datum,
ELLIPSOIDPARAM* ellparam,
long int ttype,
LOCALTRANSFORM * tparm);
4.
mappicex.h
// Сохранить растровую карту в формате TIFF
// hmap - идентификатор открытых данных
// RstName - имя RST-файла;
// TiffName - имя TIFF-файла;
// flagborder - флаг использования рамки растровой карты
// 0 - включать в формируемый файл все блоки изображения
// 1 - не включать в формируемый файл блоки изображения
// не входящие в область, ограниченную рамкой (рекомендуемое значение - 0)
// platform - Тип платформы (0 - INTEL, 1 - MOTOROLA) (рекомендуемое значение - 0)
// imageStructure - Структура изображения TIFF (0 - BLOCK, 1- STRIP, 2 - NONFRAG) (рекомендуемое значение - 1)
// compressMethod - Флаг сжатия изображения (0- не применять сжатие, 1 - сжатие PackBit) (рекомендуемое значение - 0)
// flagCMYK - выбор цветовой модели:
// 0 - цветовая модель RGB 24 бит на пиксель
// 1 - цветовая модель CMYK 32 бит на пиксель
// Режим поддерживается только для растров 24,32 бит на пиксель.
// handle - диалог визуального сопровождения процесса обработки.
_PICIMP long int _PICAPI LoadRstToTiffConverterUn(HMAP hmap, HMESSAGE handle,
const WCHAR * RstName, const WCHAR * TiffName,
int flagborder,
int platform, int imageStructure,
int compressMethod,
int flagCMYK);
// Создать файл настроек MapInfo(*.tab)
// fileName - имя файла настроек MapInfo(*.tab) / обязательный параметр
// fileNameGraphic - имя файла графического формата / обязательный параметр
// point1 - координаты точек углов изображения в метрах / обязательный параметр
// point2 - координаты точек углов изображения в метрах / обязательный параметр
// point3 - координаты точек углов изображения в метрах / обязательный параметр
// point4 - координаты точек углов изображения в метрах
// mapreg - параметры проекции выходного растра
// datum - параметры датума
// ellipsoid - параметры эллипсоида
// Структуры MAPREGISTER, DATUMPARAM и ELLIPSOIDPARAM описаны в mapcreat.h
// ПОДДЕРЖИВАЮТСЯ: 1. WGS84 UTM(метры)
// 2. СК42 проекция Гаусса-Крюгера(метры)
//
// 3. Градусы
// MapType == SEANAUTIC // Морская навигационная
// MaterialProjection == MERCATORMAP // Цилиндрическая прямая равноугольная Меркатора
// EllipsoidKind == KRASOVSKY42 // Красовского 1942г.
//
// 4. Градусы
// MapType == SEANAUTIC // Морская навигационная
// MaterialProjection == MERCATORMAP // Цилиндрическая прямая равноугольная Меркатора
// EllipsoidKind == WGS_84 // WGS 84
//
// 5. Градусы
// "Долгота / Широта (Пулково 1942)", 1, 1001
// " CoordSys Earth Projection 1, 1001", sizeStringOut);
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == KRASOVSKY42
// CoordinateSystem == CONDITION
//
// 6. Градусы
// "Долгота / Широта (WGS 72)", 1, 103
// " CoordSys Earth Projection 1, 103");
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == WGS_72
// CoordinateSystem == CONDITION
//
// 7. Градусы
// "Долгота / Широта (WGS 84)", 1, 104
// " CoordSys Earth Projection 1, 104");
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == WGS_84
// CoordinateSystem == CONDITION
//
// 8. Градусы
// "Долгота / Широта (Россия PZ90)", 1, 1012
// " CoordSys Earth Projection 1, 1012");
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == SGS_85
// CoordinateSystem == CONDITION
//
// 9. Градусы
// "Долгота / Широта (Россия SK42)", 1, 1013
// " CoordSys Earth Projection 1, 1013");
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == KRASOVSKY42
// CoordinateSystem == CONDITION
//
// 10. Градусы
// "Longitude / Latitude (Russia SK95)", 1, 1014
// " CoordSys Earth Projection 1, 1014");
// MapType == MAPSPHERE
// MaterialProjection == LATITUDELONGITUDE
// EllipsoidKind == KRASOVSKY42
// CoordinateSystem == CONDITION
_PICIMP long int _PICAPI picexCreateFileTAB_Ex(const WCHAR* fileName,
const WCHAR* fileNameGraphic,
LOCATIONTAB*point1, LOCATIONTAB*point2,
LOCATIONTAB*point3, LOCATIONTAB*point4,
MAPREGISTEREX * mapreg, DATUMPARAM* datum,
ELLIPSOIDPARAM* ellparm)
|