Интерфейс bim
Основной интерфейс для получения и работы с данными. В данном интерфейсе доступны следующие методы:
- getProject - взятие проекта на котором выполняется плагин
- getProfile - получение данных о пользователе по его идентификатору Uuid
- getProjectModels - взятие всех активных моделей проекта на котором выполняется плагин
- getModelRevisions - взятие всех ревизий модели
- getProjectTasks - получение списка всех задач проекта
- getTaskComments - получение списка всех комментариев у задачи по идентификатору задача
- getTaskAttachments - получение списка всех вложений к задаче по идентификатору задача
- getElements - функция получения списка элементов с полной информацией, на вход ей можно подать: условие поиска, сложное условие поиска
- getElements - функция получения списка элементов с полной информацией
- getElement - функция получения полной информации о элементе
- getGeometryElement - функция получения полной информации о элементе и дополнительно параметры геометрии
- getGeometryElements - функция получения списка элементов с полной информацией и дополнительно параметры геометрии, на вход ей можно подать: условие поиска, сложное условие поиска
- getGeometryElements - функция получения списка элементов с полной информацией и дополнительно параметры геометрии
- getGeometryProject
- getGeometryModel
- getGeometryElementA
- getGeometryElementB
- showElements
- createGroupElements
- showGroupElements
- createCondition
- getProjectCollisions
- getModelCollisions
- bim.getProject() - метод представляет следующую структуру
Пример использования:
def editProjectDate = project.getEditDate()
console.info(editProjectDate.toString())
// -> “INFO: 2022-01-01 01:01:12.567 +0300”
- bim.getProfile(Идентификатор пользователя)
Пример использования:
def profileUuid= profile.getUuid()
// console.info(profileUuid.toString()) -> “INFO: ef952aa8-7ddc-11ec-90d6-0242ac120003”
- bim.getProjectModels()
Пример использования:
for (Model model: listModels ) {
def modelUuid = model.getUuid()
// console.info(modelUuid .toString()) -> “INFO: 4e733308-7ddd-11ec-90d6-0242ac120003”
}
- bim.getModelRevisions(Идентификатор модели)
Пример использования:
for (ModelRevision modelRevision: listModelRevisions ) {
def modelRevisionUuid= modelRevision.getUuid()
// console.info(modelRevisionUuid .toString()) -> “INFO: 697ba2b6-7ddd-11ec-90d6-0242ac120003”
}
- getProjectTasks() метод, который возвращает структуру списка задач, каждая задача представляет из себя следующую структуру:
Пример использования
for (Task task: listTasks ) {
def taskUuid= task.getUuid()
// console.info(taskUuid .toString()) -> “INFO: c73df7aa-7ddd-11ec-90d6-0242ac120003”
}
- getTaskComments(UUID taskUuid)
Пример использования
for (Comment comment: listComments ) {
def authorUuid= comment.setAuthorUuid()
- getTaskAttachments(UUID taskUuid)
Пример использования:
for (Attachment attachment: listAttachments ) {
def createDate= attachment.setCreateDate()
// console.info(createDate.toString()) -> “INFO: 2022-01-21 10:01:12.567 +0300”
}
- bim.getElements(Условие поиска)
Пример использования:
def listWalls = bim.getElements (conditionWall )
for (Element element: listWalls ) {
def globalId = element.getGlobalId()
// console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
}
- bim.getElements(Список идентификаторов элементов)
Пример использования:
elements.add(UUID.randomUuid())
def listElements = bim.getElements(elements)
for (Element element: listElements ) {
def globalId = element.getGlobalId()
// console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
}
- bim.getElement(Идентификатор элемента)
Пример использования:
def globalId = element.getGlobalId()
// console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
- bim.getGeometryElement(Идентификатор элемента)
Структура границ Bounds:
Пример использования:
def globalId = geometryElement .getGlobalId()
console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
def volumeElement = geometryElement .getVolume()
// console.info(volumeElement.toString()) -> “INFO: 0.1”
- bim.getGeometryElements(Условие поиска)
Пример использования:
def listWalls = bim.getGeometryElements (conditionWall )
for (Element geometryElement: listWalls ) {
def globalId = geometryElement.getGlobalId()
console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
def volumeElement = geometryElement .getVolume()
// console.info(volumeElement.toString()) -> “INFO: 0.1”
}
- bim.getGeometryElements(Список идентификаторов элементов)
Пример использования:
def elements = new HashSet<UUID>()
elements.add(UUID.randomUuid())
def listElements = bim.getGeometryElements(elements)
for (Element geometryElement: listElements ) {
def globalId = geometryElement.getGlobalId()
console.info(globalId) -> “INFO: 0Dtdg2chjBhhgnQ7zCqZkk”
def volumeElement = geometryElement .getVolume()
// console.info(volumeElement.toString()) -> “INFO: 0.1”
}