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

Методы отображения стилей!?

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



Зарегистрирован: 28.09.2007
Сообщения: 10
Откуда: Ижевск

СообщениеДобавлено: Чт 29 Ноя 2007 16:23    Заголовок сообщения: Методы отображения стилей!? Ответить с цитатой

Вопрос не прозаичный, а теоретико-прикладной:
1. используют ли в одном стиле различные методы отбражения?
2. если да, то как использовать для каждого в отдельности методы:
общий, текст и символ? Для конструкции: Contour := MapO.Shapes.Insert(-1,sStyle).Contour;
3. если да, то зачем в одном стиле использовать различные методы,
может для "путаницы"?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Михаил Власов



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

СообщениеДобавлено: Пт 30 Ноя 2007 18:24    Заголовок сообщения: Ответить с цитатой

Использование нескольких методов отображения в одном стиле позволяет решать две задачи:
1. Использовать разное оформление контура в разных масштабных диапазонах. Например, железная дорога на крупных масштабах отображается во всей красе - чередующимися черными и белыми полосами, а на мелких масштабах - стандартным методом с пунктирной окантовкой.
2. Формировать сложные оформления контура из набора простых. Например для ЛЭП можно задать рисунок стрелки, которая будет отображаться на выходах из вершин, плюс рисунок кружочка, который будет отображаться в каждой вершине.

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



Зарегистрирован: 28.09.2007
Сообщения: 10
Откуда: Ижевск

СообщениеДобавлено: Пт 30 Ноя 2007 19:16    Заголовок сообщения: Ответить с цитатой

Михаил Власов писал(а):
Использование нескольких методов отображения в одном стиле позволяет решать две задачи:
1. Использовать разное оформление контура в разных масштабных диапазонах. Например, железная дорога на крупных масштабах отображается во всей красе - чередующимися черными и белыми полосами, а на мелких масштабах - стандартным методом с пунктирной окантовкой.
2. Формировать сложные оформления контура из набора простых. Например для ЛЭП можно задать рисунок стрелки, которая будет отображаться на выходах из вершин, плюс рисунок кружочка, который будет отображаться в каждой вершине.

Уважаемый Михаил, это понятон и ВЫ молодцы!
Но я спрашивал о разнотипных методах!!!
Т.е. если один Текст, задаем вектор - две опорные точки!!!
А второй, пусть, общий. В нем точки контура!!!
Используем:
Код:
Contour := MapO.Shapes.Insert(-1,sStyle).Contour;
 Part := Contour.Insert(-1);
 Part.InsertVertex(-1, X, Y, 0);

Если я задам две точки для подписи текста X1,Y1 X2,Y2
то где контур Объекта и наоборот??!!
Множество одного метода Стилей - понятно!
А множество Методов Стиля с разными подмножествами Методов???
Как в теоремах: "допустим" ручками создал все 3-и имеющихся Метода в ОДНОМ стиле и как "привязать" соответствие Contour к каждому методу отбражения?
P.S. Тип метода определить можем, а далее?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Михаил Власов



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

СообщениеДобавлено: Вт 04 Дек 2007 09:49    Заголовок сообщения: Ответить с цитатой

Каждый пространственный объект ИнГео включает:
1. Набор геометрических форм, где геометрическая форма - это совокупность контура и ссылки на стиль, при помощи которого этот контур должен отображаться (важно: на стиль, а не на метод отображения). Количество форм в одном просранственном неограничено.
Так, например, объект может состоять из двух форм, первая из которых является формой, определяющей геометрию объекта (контур здания), а вторая - вспомогательная форма, использующаяся для подписи этого объекта (подпись здания).
Каждая из двух форм имеет собственный контур и ссылается на соответствующий стиль.
Кстати, для разделения форм, определяющих геометрию объекта, от вспомогательных форм, в параметрах стиля предусмотрен флаг "Определяет геометрию объекта". Этот флаг используется различными штатными процедурами ИнГео, например, при подсчете периметра и площади объекта.
2. Набор семантических (атрибутивных) данных - структура и кратность таких данных определена набором семантических таблиц слоя, к котоому относится пространственный объект.
----
В Вашем примере, видимо, следует создать в слое два стиля: один для основного контура, а второй - для подписи.
А при создании пространственного объекта создавать две формы (Shapes): одну, содержащую точки основного контура и ссылающуюся на основной стиль со стандартным методом отображения, и вторую форму, содержащую две опорных точки текста, ссылающуюся на вспомогательный стиль с текстовым методом отображения.
Например, так:
Код:
// Создание основной формы объекта
aShape := aMapObject.Shapes.Insert(-1, MainStyleId);
aPart := aShape.Contour.Insert(-1);
aPart.InsertVertex(...); // Заполнение основного контура
...
// Создание вспомогательной формы для отображения подписи
aShape := aMapObject.Shapes.Insert(-1, CaptionStyleId);
aPart := aShape.Contour.Insert(-1);
aPart.InsertVertex(...); // Первая вершина подписи
aPart.InsertVertex(...); // Вторая вершина подписи

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

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


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