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