Цитата |
---|
Артем пишет: Если растр отрывается отдельной функцией, то для чего
NameRstIn - имя исходного растра; NameRstOut - имя выходного растра; |
Код |
---|
//========================================================================
// Поворот растра вокруг точки NullPoint на угол Angle
//
// map - карта,содержащая векторные данные;
// RstNumber - номер исходного растра в цепочке растров
// NameRstIn - имя исходного растра;
// NameRstOut - имя выходного растра;
// NullPoint - координаты точки поворота в элементах растра;
// Angle - угол поворота (в радианах);
// handle - диалог визуального сопровождения процесса обработки.
//========================================================================
_MAPIMP long int WINAPI RstRotating(HMAP map, long int RstNumber,
char * NameRstIn, char * NameRstOut,
DOUBLEPOINT NullPoint, double Angle,
HMESSAGE handle);
|
Аргумент NameRstOut предназначен для передачи в функцию имени выходного растра, т.к. функция RstRotating создает новый растр с повернутым изображением. Имена исходного и выходного растров должны отличаться.
Идентификация исходного растра осуществляется аргументами RstNumber и NameRstIn.
Функция RstRotating также будет обрабатывать растр, который добавлен в документ карты (матрицы, растра, и т.д.). Добавление растров в документ выполняется следующими функциями:
• _MAPIMP long int _MAPAPI mapOpenRstForMap(HMAP hMap, const char *rstname, long int mode); объявлена в rstapi.h.
• _MAPIMP long int _MAPAPI mapOpenRstForMapUn(HMAP hMap, const WCHAR *name, long int mode); объявлена в rstapi.h.
•
// Добавить данные к открытой карте (карту, растр, матрицу)
// hMap - идентификатор открытых данных
// name - имя открываемого файла (SIT, MTW, MTQ, RSW, MPT)
// mode - режим чтения/записи (GENERIC_READ, GENERIC_WRITE или 0)
// Возвращает идентификатор типа данных (FILE_MAP - для пользовательской
// карты, FILE_RSW - для растра, FILE_MTW - для матрицы, FILE_MTL - для
// матрицы слоев, FILE_MTQ - для матрицы качеств), данные добавляются в
// список последними, если данные уже были открыты, число открытых данных
// (карт, растров, матриц) не меняется
// transform - признак трансформирования пользовательской карты
// к ранее открытым данным (если проекции разные):
// 0 - не трансформировать данные (преобразовывать "на лету"),
// 1 - трансформировать данные при открытии и сохранить карту
// в новой проекции,
// -1 - задать вопрос пользователю.
// В серверной версии (-1) обрабатывается, как 0.
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapAppendData(HMAP hMap, const char *name, long int mode = 0); объявлена в mapapi.h.
• _MAPIMP long int _MAPAPI mapAppendDataEx(HMAP hMap, const char *name, long int mode = 0, long int transform = -1); объявлена в mapapi.h.
•
// Добавить данные к открытой карте (карту, растр, матрицу)
// hMap - идентификатор открытых данных
// name - имя открываемого файла (SIT, MTW, MTQ, RSW, MPT) в кодировке UNICODE
// mode - режим чтения/записи (GENERIC_READ, GENERIC_WRITE или 0)
// transform - признак трансформирования пользовательской карты
// к ранее открытым данным (если проекции разные):
// 0 - не трансформировать данные (преобразовывать "на лету"),
// 1 - трансформировать данные при открытии и сохранить карту
// в новой проекции,
// -1 - задать вопрос пользователю.
// В серверной версии (-1) обрабатывается, как 0.
// password - пароль доступа к данным из которого формируется 256-битный код
// для шифрования данных (при утрате данные не восстанавливаются)
// size - длина пароля в байтах !!!
// Передача пароля необходима, если при создании карты он был указан.
// Если пароль не передан, а он был указан при создании,
// то автоматически вызывается диалог scnGetMapPassword из mapscena.dll (gisdlgs.dll)
// Если выдача сообщений запрещена (mapIsMessageEnable()), то диалог
// не вызывается, а при отсутствии пароля происходит отказ открытия данных
// Возвращает идентификатор типа данных (FILE_MAP - для пользовательской
// карты, FILE_RSW - для растра, FILE_MTW - для матрицы, FILE_MTL - для
// матрицы слоев, FILE_MTQ - для матрицы качеств), данные добавляются в
// список последними, если данные уже были открыты, число открытых данных
// (карт, растров, матриц) не меняется
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapAppendAnyData(HMAP hMap, const WCHAR *name, long int mode = 0, long int transform = -1); объявлена в mapapi.h.
• _MAPIMP long int _MAPAPI mapAppendDataUn(HMAP hMap, const WCHAR *name, long int mode = 0); объявлена в mapapi.h.
• _MAPIMP long int _MAPAPI mapAppendAnyDataPro(HMAP hMap, const WCHAR *name, long int mode = 0, long int transform = -1, const WCHAR *password = 0, long int size = 0); объявлена в mapapi.h.