На главную... Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены| Форум | Статьи | Обучение | Контакты

LoadMapToBMP

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
LoadMapToBMP
 
Тестирую GisToolkit DLL 11 из своего EXE.

1) Если последовательно выполнить на одном и том же MAP файле несколько вызовов    
   к LoadMapToBMP, то скорость второго и следующих выполнений в 7-8 раз меньше, чем  
   у самого первого. При этом не влияет, если между последовательными выполнениями    

   функции закрывать и переоткрывать MAP файл.     В чем причина?


2) В чем причина больших визуальных различий картинки, полученной через    

   MapPaint95ToFile и LoadMapToBMP для одного и того же MAP файла
  (толщина линий,    пунктир, шрифты и т.п.) ? Нужны какие-то специальные настройки?
  см. файлы в приложении
mapPAint95ToFiile.bmp (535.18 КБ)
LoadMapToBMP.bmp (539.46 КБ)
 
mapPaint95ToFile выполняет рисование с текущим разрешением (условной точностью экрана (точек/метр) = mapGetScreenPrecision()).
LoadMapToBMP выполняет рисование с указанным Вами разрешением (resolution). Более высокое разрешение увеличивает толщину линий и размер шрифта.
 
Спасибо за ответ.



Тогда связанный вопрос. При изменении условной точности  mapSetScreenPrecision есть ли функция, которая
возвращает высоту и ширину картинки или надо самому пересчитывать по текущей и назначаемой точности экрана?
 
 // Запросить размеры общего изображения карты в пикселах
// для текущего масштаба
// hmap - идентификатор открытых данных
// В переменную width заносится ширина изображения (dx),
// в переменную height - высота (dy)

_MAPIMP void _MAPAPI mapGetPictureSize(HMAP hmap, long int *width,
                                      long int *height);
_MAPIMP void _MAPAPI mapGetPictureSizePro(HMAP hmap, double * width,
                                         double * height);
 
mapGetPictureSize, mapGetPictureSizePro, mapGetPictureWidth, mapGetPictureHeight, вызываемые сразу после MapOpenData и mapSetScreenPrecision дают старый размер изображения в пикселях (без учета изменения ScreenPrecision), но если далее было рисование, то эти функции после него дают уже новый размер. Таким образом, перед первым рисованием эти функции бесполезны.
Страницы: 1
Читают тему (гостей: 1)



© КБ Панорама, 1991-2024

Регистрируясь или авторизуясь на форуме, Вы соглашаетесь с Политикой конфиденциальности