Форум НПФ  

Вернуться   Форум НПФ "ТОПОМАТИК" > Программные продукты "Топоматик Robur" на платформе "Robur AP3" > Средства разработки Топоматик Robur > Вопросы и ответы
Ник
Пароль
Регистрация FAQ Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03-04-2022, 16:25
boris3698 boris3698 вне форума
Новичок
 
Регистрация: Nov 2021
Сообщения: 8
По умолчанию Работа с семантикой

Здравствуйте!

В продолжении темы "Изменить семантику точки"

Для изменения полей семантики точки использовалась следующая конструкция:

var information = sfcLayer.Surface.Points.GetExtensiveInformation(sr fPointIntersectionsIndex);
information.Semantic["TYPE"] = 5;


В данном случае обращение к полям происходит по тэгу, через который задаётся значение (int) что соответствует одному из вариантов из списка значений из условного перехода в семантике.

В связи с этим возникает ряд вопросов:

1) Правильно ли я понимаю принцип выбора варианта в условном переходе?

2) Как получить все доступные тэги со значения у объекта семантики?

3) Могут ли у одного объекта семантики быть тэги с одинаковыми именами ?(на разных ветках имеются одинаковые условные переходы).

4) Как решаются аналогичные задачи при работе с линейными (площадными) объектами? (У структурной линии отсутствует метод GetExtensiveInformation).

Заранее благодарю.

Последний раз редактировалось boris3698, 03-05-2022 в 8:37.
Ответить с цитированием
  #2  
Старый 03-05-2022, 9:42
Василий Гончаров Василий Гончаров вне форума
Разработчик Robur
 
Регистрация: Oct 2016
Сообщения: 154
По умолчанию

Добрый день!

1. Да, так и есть. В этом случае там задаётся код узла нужного условного перехода. Если открыть файл семантики в xml - то за это отвечает параметр handle.
2. Вы можете воспользоваться одним из следующих методов класса SemanticDataSet, экземпляр которого возвращает свойство Semantic:
GetVisiblePropertiesWithTags() - возвращает все видимые свойства, с тэгами.
GetTags - заполняет словарь - тэг-значение свойства
3. В рамках одного узла семантики, одинаковые тэги недопустимы. Но на разных узлах могут быть одинаковые тэги. Не совсем понимаю, что Вы имеете в виду под фразой "на разных ветках имеются одинаковые условные переходы", поэтому здесь затрудняюсь ответить.
4. Наличие метода GetExtensiveInformation для точки поверхности связано с оптимизацией, дело в том, что точек поверхности может быть большое количество, а семантика присутствует далеко не у всех точек. В то же время для структурных линий семантика, с большой долей вероятности присутствует практически на каждой линии, поэтому для линейных и площадных объектов у неё есть свойство LinearSemantic и AreaSemantic соответственно.
Ответить с цитированием
Ответ


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 3:34.

Навигация по основному сайту
Главная Каталог продуктов и услуг Где купить Сопровождение
Вакансии О компании Обзоры Канал на YouTube

vBulletin v3.0.7 , Copyright ©2000-2022, Jelsoft Enterprises Ltd.
Copyright © 2003-2022, НПФ "ТОПОМАТИК".