Список форумов www.integro.ru www.integro.ru
ЦСИ ИНТЕГРО
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Изменение ширины окантовки в стандартном методе отображения

 
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Пожелания и предложения
Предыдущая тема :: Следующая тема  
Автор Сообщение
Iron_Man



Зарегистрирован: 02.09.2011
Сообщения: 20

СообщениеДобавлено: Пн 05 Сен 2011 15:42    Заголовок сообщения: Изменение ширины окантовки в стандартном методе отображения Ответить с цитатой

Хотелось бы иметь возможность менять ширину окантовки не только тогда, когда выбран стиль "Сплошная". Попутный вопрос: почему эта возможность заблокирована в Ингео?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Михаил Власов



Зарегистрирован: 14.02.2005
Сообщения: 580
Откуда: ИНТЕГРО

СообщениеДобавлено: Пн 05 Сен 2011 15:47    Заголовок сообщения: Re: Изменение ширины окантовки в стандартном методе отображения Ответить с цитатой

Iron_Man писал(а):
Хотелось бы иметь возможность менять ширину окантовки не только тогда, когда выбран стиль "Сплошная". Попутный вопрос: почему эта возможность заблокирована в Ингео?

Потому что эта возможность была заблокирована в WinAPI CreatePen.

Однако, в ИнГео можно использовать символьный метод отображения. Там гораздо больше возможностей по созданию окантовок.

_________________
С уважением, Михаил Власов.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Iron_Man



Зарегистрирован: 02.09.2011
Сообщения: 20

СообщениеДобавлено: Пн 05 Сен 2011 16:06    Заголовок сообщения: Ответить с цитатой

Понял насчёт WinApi.
Да, в данный момент я так и делаю - рисую символьным методом отображения. Попутно возник вопрос: а как программно "нажать" на волшебную кнопку редактора "подравнять границы по элементам изображения" ? у IInPicturePictureFigure есть метод Stretch, но оно оказывается не тем, что я предположил. Пробовал играть с другими свойствами (ширина, высота), не получатся сделать то, что редактор делает на раз при помощи этой волшебной кнопки.
И ещё вопрос, как сделать, чтобы картинка рисовалась вдоль линии по нормали, а не строго горизонтально?
Спасибо.
P.S. В редакторе символьного отображения возможности по изменению ширины окантовки теже, т.е. WinApi CreatePen кушает мозг.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
APopov



Зарегистрирован: 19.06.2006
Сообщения: 347
Откуда: Самара

СообщениеДобавлено: Пн 05 Сен 2011 17:18    Заголовок сообщения: Ответить с цитатой

скорее всего програмно нажать не на что. а вот написать свою функцию для этого можно.
фактически вам нужно установить свойства X1 и т.д объекта IIngeoPicture, значения для которых могут быть вычислены нахождением мин/макс границ среди всех IIngeoPicture.Figures

_________________
ОАО "Самара-Информспутник",
инженер-программист Попов Артем
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Iron_Man



Зарегистрирован: 02.09.2011
Сообщения: 20

СообщениеДобавлено: Пн 05 Сен 2011 17:45    Заголовок сообщения: Ответить с цитатой

vvHedgehog, Smile
ну про программное нажатие я имел в виду конечно вызов функции, неведомой мне, но которую выполняет Ингео, при нажатии на эту кнопку. Со всякими свойствами, я уже наигрался, ничего не помогает сделать всё красиво, как делает эта кнопка редактора. Попробуйте сами закодировать создание метода отображения, подгрузки растра из файла, поймёте о чём речь сразу.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
APopov



Зарегистрирован: 19.06.2006
Сообщения: 347
Откуда: Самара

СообщениеДобавлено: Пн 05 Сен 2011 19:08    Заголовок сообщения: Ответить с цитатой

я тоже имел ввиду вызов функции, когда говорил, что нажать нечего - ибо такой функции нету.
но способом описанным мною выше, я на 75% уверен, что сделать это можно.

кстати, вот в этом файле "c:\Program Files\Integro\InGeo\IngeoIntfs.chm" подробно описана объектная модель ИнГео, там описаны все доступные функции, и если там нет, - то нет.

_________________
ОАО "Самара-Информспутник",
инженер-программист Попов Артем
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Iron_Man



Зарегистрирован: 02.09.2011
Сообщения: 20

СообщениеДобавлено: Чт 08 Сен 2011 10:57    Заголовок сообщения: Ответить с цитатой

vvHedgehog, спасибо !
Код:
aSymbolPainter.Picture.X1 := aPictPictFigure.Left;
aSymbolPainter.Picture.X2 := aPictPictFigure.Left + aPictPictFigure.Width;
aSymbolPainter.Picture.Y1 := aPictPictFigure.Bottom + aPictPictFigure.Height;
aSymbolPainter.Picture.Y2 := aPictPictFigure.Bottom;

спасли "отца русской демократии". Остальные вопросы остаются в силе. Smile
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Михаил Власов



Зарегистрирован: 14.02.2005
Сообщения: 580
Откуда: ИНТЕГРО

СообщениеДобавлено: Чт 15 Сен 2011 14:36    Заголовок сообщения: Ответить с цитатой

Iron_Man писал(а):
И ещё вопрос, как сделать, чтобы картинка рисовалась вдоль линии по нормали, а не строго горизонтально?

Нарисовать картинку по нормали, а не строго по горизонтали.

_________________
С уважением, Михаил Власов.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов www.integro.ru -> Пожелания и предложения Часовой пояс: GMT + 5
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете добавлять приложения в этом форуме
Вы можете скачивать файлы в этом форуме


© phpBB Group
Русская поддержка phpBB