Показать сообщение отдельно
  #4  
Старый 10-23-2013, 13:36
Тимофей Ананичев Тимофей Ананичев вне форума
Разработчик Robur
 
Регистрация: Sep 2012
Сообщения: 18
По умолчанию Пример работы с Геологией Robur AP3

Я обещал в течение рабочего дня, а не к обеду

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

Пример работы с нашими глобальными таблицами выработок и грунтов прилагается к сообщению.

Особенный интерес для Вас представляет файл GlgGAccessModule.cs, в котором находится функция actAddGround_Execute.

Она добавляет новый грунт в таблицу грунтов текущего проекта и потом, сразу, создает новую глобальную выработку, в которую вносит слой с данным грунтом.

Вызвать функцию можно, добавив ее в меню Робур в адаптации, или из командной строки "gg_addground" в момент, когда открыт проект.

Основная сложность, которая возникает с геологией в том, что у глобальных таблиц грунтов и выработок в дереве проекта нет идентификаторов, поэтому приходится сначала найти сам элемент "Геология", а уже потом выбрать среди его дочерних элементов нужный по названию. Это, конечно, не очень удобно, но пока - единственный способ получить ссылки на элементы. Код поиска по названию - в функции модуля GetGeologyItem.

Кроме того, при работе с геологией, наверняка, у Вас возникнут дополнительные вопросы, так как работа с ней непростая.

Пожалуйста, пишите, будем рады Вас проконсультировать.

В Робур имеются различные механизмы, исключающие дублирование грунтов, проверки перед удалением, не используются ли грунты где-то в проекте. Целостность и корректность данных для геологии очень важна и надо постараться, чтобы модуль не нарушал ее.
Вложения
Тип файла: zip GlgGAccess.zip (11.6 Кбайт, 1766 просмотров)
Ответить с цитированием