Не знаю, может и можно.
Ещё раз повторюсь, если мы говорим о многолистовой векторной карте (MAP), то вы можете получить список листов данной карты, а у каждого листа карты есть габариты:
Код |
---|
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// +++++ ФОРМУЛЯР ЛИСТА ЭЛЕКТРОННОЙ КАРТЫ ++++++++++++++++
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
typedef struct LISTREGISTER
{
int Length ; // Размер данной структуры (544)
char Nomenclature[32] ; // Номенклатура листа
char ListName[32] ; // Название листа
char FileName[260] ; // Имя файла по которому в районе будет
// создан лист с данным именем
// и расширениями HDR, DAT, SEM, DRW
// Прямоугольные координаты листа в метрах
double XSouthWest ; // X ю-з
double YSouthWest ; // Y ю-з
double XNorthWest ; // X с-з
double YNorthWest ; // Y с-з
double XNorthEast ; // X с-в
double YNorthEast ; // Y с-в
double XSouthEast ; // X ю-в
double YSouthEast ; // Y ю-в
// Геодезические координаты листа в радианах
double BSouthWestCoordinate ; // B ю-з
double LSouthWestCoordinate ; // L ю-з
double BNorthWestCoordinate ; // B с-з
double LNorthWestCoordinate ; // L с-з
double BNorthEastCoordinate ; // B с-в
double LNorthEastCoordinate ; // L с-в
double BSouthEastCoordinate ; // B ю-в
double LSouthEastCoordinate ; // L ю-в
int MaterialKind ; // Вид исходного материала
int MaterialType ; // Тип ИКМ
int ReliefHeight ; // Высота сечения рельефа в дециметрах
char Date[12] ; // Дата съемки "ГГГГММДД" (YYYYMMDD)
double MagneticAngle ; // Магнитное склонение
double YearMagneticAngle ; // Годовое магнитное склонение
double MeridianAngle ; // Среднее сближение меридианов
char DateAngle[12] ; // Дата склонения "ГГГГММДД" (YYYYMMDD)
unsigned int UpdateDate ; // Дата обновления листа в виде числа YYYYMMDD по Гринвичу
unsigned int UpdateTime ; // Время обновления листа в виде числа - секунды с 0 часов по Гринвичу
int HeightSystem ; // Система высот листа (может отличаться от системы высот района)
char Reserve[16] ; // = 0
}
LISTREGISTER;
|
То есть для каждого листа карты вы можете получить его габариты (геодезические или плоские прямоугольные координаты), и уже по листам проверять.
Количество листов в карте:
Код |
---|
// Запросить общее число листов в районе
// hmap - идентификатор открытых данных
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapGetListCount(HMAP hmap);
|
Получить паспорт карты и некоторый лист карты:
Код |
---|
// Запросить паспортные данные векторной карты
// Структуры MAPREGISTER и LISTREGISTER описаны в mapcreat.h
// hmap - идентификатор открытых данных
// sheetnumber - номер листа карты для
// которого запрашиваются паспортные данные
// При ошибке возвращает ноль
_MAPIMP long int _MAPAPI mapGetMapInfo(HMAP hmap, long int sheetnumber,
MAPREGISTER *map, LISTREGISTER *sheet);
_MAPIMP long int _MAPAPI mapGetMapInfoEx(HMAP hmap, long int sheetnumber,
MAPREGISTEREX *map, LISTREGISTER *sheet);
_MAPIMP long int _MAPAPI mapGetMapInfoPro(HMAP hmap, long int sheetnumber,
MAPREGISTEREX *map, LISTREGISTER *sheet,
SHEETNAMES * sheetnames); // 07/11/14
|