Добрый день.
Хочу создать лист масштаба 1:25000 с рамкой.
Расчёт рамки хочу сделать по номенклатуре
Использую следующий вызов процедур, как описано в документации п.п. 4.2.2 Создание новой карты или плана
Столкнулся со следующими проблемами:
1. Функция отсутствует
// Сформировать имена файлов по номенклатуре – "M36001"
mapSetFileNameFromNomenclature(listreg.FileName, sizeof(listreg.FileName),
listreg.Nomenclature);
2. Карту создала, но рамка листа отсутствует
Что не так ?
Используемый код:
var
mapreg : TMAPREGISTEREX;
listreg : TLISTREGISTER;
hmap : maptype.HMAP;
code : integer;
begin
mapreg.Length := sizeof(TMAPREGISTEREX);
listreg.Length := sizeof(TLISTREGISTER);
// Создать топокарту в системе координат ПЗ-90.11 года
code := mapRegisterFromMapType(1, mapreg);
// Хранение координат с максимальной точностью
mapreg.DeviceCapability := -1;
// Знаменатель масштаба 1:100 000
mapreg.Scale := 25000;
// Условное название карты (название населенного пункта или другое)
StrLCopy(mapreg.Name, 'Район работ', sizeof(mapreg.Name));
// Условное название карты (название населенного пункта или другое)
StrLCopy(listreg. ListName, 'Лист M-36-001-1-1', sizeof(listreg. ListName));
// Номенклатура листа для топокарты в соответствии с масштабом
// или условное название листа
StrLCopy(listreg.Nomenclature, '0.M-36-001-1-1', sizeof(listreg.Nomenclature));
// Сформировать имена файлов по номенклатуре – "M3600111"
code := mapSetFileNameFromNomenclatureUn(@listreg.FileName, sizeof(listreg.FileName),
@listreg.Nomenclature);
// Рассчитать прямоугольные и геодезические координаты листа
// и осевой меридиан по номенклатуре
// При добавлении листа к существующей карте – первый параметр hMap
code := mapCalcTopographicSheetEx(0, @mapreg, @listreg);
// Данные о проекции заполнены
mapreg.DataProjection := 1;
// Создать новую карту
hmap := mapCreateMapUn('d:\1\mymap.map', '25t05gopen.rsc',
@mapreg, @listreg, 'Район работ', 0, 0);
Хочу создать лист масштаба 1:25000 с рамкой.
Расчёт рамки хочу сделать по номенклатуре
Использую следующий вызов процедур, как описано в документации п.п. 4.2.2 Создание новой карты или плана
Столкнулся со следующими проблемами:
1. Функция отсутствует
// Сформировать имена файлов по номенклатуре – "M36001"
mapSetFileNameFromNomenclature(listreg.FileName, sizeof(listreg.FileName),
listreg.Nomenclature);
2. Карту создала, но рамка листа отсутствует
Что не так ?
Используемый код:
var
mapreg : TMAPREGISTEREX;
listreg : TLISTREGISTER;
hmap : maptype.HMAP;
code : integer;
begin
mapreg.Length := sizeof(TMAPREGISTEREX);
listreg.Length := sizeof(TLISTREGISTER);
// Создать топокарту в системе координат ПЗ-90.11 года
code := mapRegisterFromMapType(1, mapreg);
// Хранение координат с максимальной точностью
mapreg.DeviceCapability := -1;
// Знаменатель масштаба 1:100 000
mapreg.Scale := 25000;
// Условное название карты (название населенного пункта или другое)
StrLCopy(mapreg.Name, 'Район работ', sizeof(mapreg.Name));
// Условное название карты (название населенного пункта или другое)
StrLCopy(listreg. ListName, 'Лист M-36-001-1-1', sizeof(listreg. ListName));
// Номенклатура листа для топокарты в соответствии с масштабом
// или условное название листа
StrLCopy(listreg.Nomenclature, '0.M-36-001-1-1', sizeof(listreg.Nomenclature));
// Сформировать имена файлов по номенклатуре – "M3600111"
code := mapSetFileNameFromNomenclatureUn(@listreg.FileName, sizeof(listreg.FileName),
@listreg.Nomenclature);
// Рассчитать прямоугольные и геодезические координаты листа
// и осевой меридиан по номенклатуре
// При добавлении листа к существующей карте – первый параметр hMap
code := mapCalcTopographicSheetEx(0, @mapreg, @listreg);
// Данные о проекции заполнены
mapreg.DataProjection := 1;
// Создать новую карту
hmap := mapCreateMapUn('d:\1\mymap.map', '25t05gopen.rsc',
@mapreg, @listreg, 'Район работ', 0, 0);