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

Изображение объекта на кнопку

Поиск  Пользователи  Правила  Войти
Форум » Настольные приложения » GIS ToolKit, GIS ToolKit Active, ГИС Конструктор для Windows
Страницы: 1
RSS
Изображение объекта на кнопку, Вывести изображение объекта на кнопку без масштабирования
 
Здраствуйте, какой функцией можно вывести изображение объекта карты на кнопку, чтобы оно не менялось в зависимости от масштаба отображения? У себя попробывал mapPaintObject95: создаю bitmap и в него записываю, но кнопки создаются динамически и их изображение также, если пользователь изменил масштаб и добавляет новую или изменяет старую кнопку то изображение на кнопке отображается в текущем масштабе. Функции отображения образца объекта из классификатора не подходят, т.к. у объектов  могут быть добавлены семантики, отвечающие за вид отображения объекта, или объект может быть графическим, т.е. DrawObject.
 
Вы все правильно делаете, только перед mapPaintObject95 установите фиксированный масштаб и состав отображения объектов.
 
Спасибо, все получилось, надо было просто посчитать коэф. масштаба как высоту области вывода к разности координат рамки объекта. Только с подписями не все гладко: как установить текст подписи, как в классификаторе, пока сам туда заношу через mapPutText(Obj, "Text",0), пересчитываю длину и обновляю вторую точку,но хотелось бы как в классификаторе?
 
Поясните фразу "как в классификаторе"?
 
Цитата
Andrey Gheleznyakov написал:
Поясните фразу "как в классификаторе"?
В редакторе классификатора текстовые объекты отображаются как "AaBbCc" или "Arial", т.е. название шрифта, как взять то, что там написано и присвоить своему, вновь созданному, объекту карты? Или там просто берется название шрифта и присваивается тексту подписи?
Изменено: Максим Казаровец - 24.01.2018 10:06:32
 
Вы правильно подметили, что там просто берется название шрифта и присваивается тексту создаваемой подписи как объекта карты.
 
Здравствуйте, а как вывести изображение графического объекта(mapIsDrawObject), mapPaintObject95 ничего не выводит? mapPaintObject95 выводит изображение, если сделать mapCommitObject, а как отрисовать графический объект из памяти, не нанося его на карту?
Изменено: Максим Казаровец - 28.02.2018 15:32:01
 
Объект, корректно заполненный в HOBJ, должен отрисовываться и без mapCommitObject.
Если у Вас просто есть метрика и Вы хотите выполнить отрисовку объекта по ней в своих условных знаках, то Вы можете использовать:
mapViewUserObject
mapPaintUserObject95
При этом заполнять HOBJ не нужно.
 
Цитата
Денис Вицко написал:
Объект, корректно заполненный в HOBJ, должен отрисовываться и без mapCommitObject.
Все, разобрался, чтобы корректно отрисовывался объект надо использовать mapPaintMapObject95 и заполнять структуру PAINTPARM. Для графического объекта PAINTPARM.Image = IMAGE_DRAW ,   функция отрисовки PAINTPARM.Parm = mapDrawParameters(hobj, 0) и PAINTPARM.Mode = R2_COPYPEN | IM_SCALE, а для объекта классификатора PAINTPARM.Image =IMAGE_OBJ, остальные параметры заполнять не нужно. Только пока не могу разобраться с вновь созданной пустой картой, объекты на кнопках не отображаются пока на карту не будет нанесен хотя бы один объект, как это обойти, временно создать один объект и удалить его в конце или есть способ попроще? ViewSelect устанавливаю для всех объектов, но если объектов на карте нет, то он пустой, как решить?
 
Цитата
Максим Казаровец написал:
Только пока не могу разобраться с вновь созданной пустой картой, объекты на кнопках не отображаются пока на карту не будет нанесен хотя бы один объект, как это обойти, временно создать один объект и удалить его в конце или есть способ попроще? ViewSelect устанавливаю для всех объектов, но если объектов на карте нет, то он пустой, как решить?

Вот тут не понял. Вы рисуете на кнопках объекты, которых на карте нет. Так?
Рисование выполняете функцией mapPaintMapObject95. При чем тут ViewSelect?

Можно пример или фрагмент кода, чтобы посмотреть порядок Ваших действий?
Желательно пример, чтобы можно было повторить.
Страницы: 1
Читают тему (гостей: 1)



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

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