Last modified by gitlab wiki on 02.07.2026, 14:58

Show last authors
1 = BCF (Задачи) — руководство пользователя =
2
3 Раздел **Задачи** в Anchor позволяет работать с **Building Collaboration Format (BCF)** в связке с проектом **Bimit** и открытой моделью в Revit или Archicad.
4
5 Краткая версия: [[05 BCF>>doc:3_manual.14_ifc_anchor.05_BCF.WebHome]].
6
7
8 ----
9
10 == Назначение ==
11
12 | Возможность | Описание |
13 | Просмотр замечаний | Список BCF-топиков проекта Bimit |
14 | Комментарии | Чтение, ответы, вложенные ответы, локальное удаление |
15 | Навигация в CAD | Точка обзора (камера) и выделение элементов по IFC GUID |
16 | Импорт / экспорт | Файлы `.bcf` и `.bcfzip` с диска |
17
18 Anchor **не** выполняет двустороннюю синхронизацию с Bimit в реальном времени. Кнопка **Синхронизация** в UI отключена. Обмен с внешними системами — через **Сохранить BCF** / **Загрузить из файла**.
19
20 ----
21
22 == Экран «Задачи» ==
23
24 [[image:mermaid-05_BCF_User_guide-0.png||alt="Diagram"]]
25
26
27 === Шапка ===
28
29 | Элемент | Поведение |
30 | **Документ** | `CurrentDocumentService` — цель IPC-команд BCF (Revit/Archicad) |
31 | **Проект** | Текущий проект Bimit; смена → `ReloadTasks()` из API |
32 | **Загрузить из файла** | `BcfAppService.LoadFromFile` — **полная замена** `TaskItems` |
33 | **Сохранить BCF** | Диалог сохранения `.bcf`; сериализация текущего списка |
34 | **Синхронизация** | Заглушка («скоро») |
35
36 === Список задач (`TaskList`) ===
37
38 - Карточки {{{BCFTaskCard}}}: превью, дата ({{{dd-MM-yy}}}), заголовок топика.
39 - **Поиск** — подстрока в {{{Topic.Title}}} (без учёта регистра).
40 - **Фильтр** (диалог {{{FilterBox}}}):
41 - **Автор** — {{{Topic.CreationAuthor}}};
42 - **Начало** / **Конец** — диапазон {{{Topic.CreationDate}}};
43 - фильтр **Модель** в разметке скрыт ({{{Visibility="Hidden"}}}), в коде не применяется к {{{FilteredTasks}}}.
44
45 === Панель деталей (`BCFTaskInfo`) ===
46
47 Открывается при выборе карточки. Показывает:
48
49 - заголовок, описание, **Ответственный** ({{{AssignedTo}}});
50 - автора и дату создания топика;
51 - превью первого viewpoint задачи;
52 - список корневых комментариев (ответы вложены под родителем);
53 - форму {{{CommentAnswer}}} для нового комментария.
54
55 Кнопка-стрелка ({{{ExpanderButton}}}) переключает режим «только список» / «список + детали». При ширине окна < 700 px список автоматически сужается до ~230 px ({{{IsShrinked}}}).
56
57 ----
58
59 == Комментарии ==
60
61 === Просмотр (`BCFCommentCard`) ===
62
63 При наведении на превью комментария:
64
65 | Кнопка | Условие | Действие |
66 | Глаз | Есть изображение | Окно с увеличенным снимком |
67 | Куб (`CubeScan`) | Есть `Components` с IFC GUID | `SelectElements` → IPC в CAD |
68 | 3D (`Video3d`) | Есть `VisualizationInfo` | `ShowViewPoint` → IPC в CAD |
69
70 Вкладки: текст комментария, метаданные, список IFC GUID.
71
72 === Ответ и новый комментарий ===
73
74 - **Ответить** — встраивает {{{CommentAnswer}}} с привязкой к родительскому комментарию ({{{ReplyToComment}}}).
75 - Корневая форма внизу задачи — комментарий верхнего уровня.
76
77 **Отправить:**
78
79 1. Если есть email из профиля Bimit — автор = email профиля.
80 2. Иначе — диалог **Введите свой Email** (сохраняется в сессии через {{{SetAuthorEmail}}}).
81 3. Опционально — изображение (jpg/png/bmp) как viewpoint без камеры.
82 4. Опционально — {{{CommentsSelector}}}: при выборе нескольких комментариев создаётся **клон** ответа для каждого (поле {{{Clones}}} в BCF).
83
84 **Удалить** — только комментарии с {{{CanDelete == true}}} (добавленные в текущей сессии Anchor).
85
86 === Поиск внутри задачи ===
87
88 Фильтр по подстроке в тексте комментария ({{{Comment.Comment1}}}).
89
90 ----
91
92 == Связь с CAD ==
93
94 Для **Выделить элементы** и **Точка обзора** нужны:
95
96 1. Документ выбран в шапке и **открыт** в CAD (зелёная точка в списке документов на экспорте).
97 2. Плагин Anchor запущен в CAD.
98
99 Команды IPC ({{{Data.Common.IPC.IpcBcfCommands}}}):
100
101 - {{{BCF_SELECT_ELEMENTS}}} — список IFC GUID;
102 - {{{BCF_SHOW_VIEWPOINT}}} — камера + опционально reference GUID для кадрирования;
103 - {{{BCF_OPERATION_RESULT}}} — ответ в snackbar.
104
105 Реализация: {{{RevitDocumentService}}}, {{{ArchicadDocumentService}}}. Базовый {{{BaseDocumentService}}} возвращает предупреждение «не поддерживается».
106
107 ----
108
109 == Загрузка и сохранение ==
110
111 | Операция | Источник / приёмник | Примечание |
112 | Открытие раздела / смена проекта | Bimit API `exportBCF` (BCF 3.0) | `MainRepository.LoadBCF()` |
113 | Загрузить из файла | Локальный `.bcf` / `.bcfzip` | Парсинг `BaseBCFService` |
114 | Сохранить BCF | Локальный `.bcf` | `BimitService.SaveBCF`; при пути — файл на диск |
115
116 Локальные правки (новые комментарии) остаются в памяти до сохранения в файл. Обратная запись в Bimit через UI **не реализована**.
117
118 ----
119
120 == Типичные сценарии ==
121
122 === Разбор замечания в Revit ===
123
124 1. Войти в Bimit, выбрать проект и документ.
125 2. Revit: **Расширения** → **Запустить якорь**.
126 3. **Задачи** → открыть карточку → **3D-камера** на комментарии.
127 4. При необходимости **Куб** для выделения элементов.
128
129 === Передать ответы коллеге ===
130
131 1. Добавить комментарии в Anchor.
132 2. **Сохранить BCF** → отправить {{{.bcf}}} файл.
133
134 === Работа офлайн с архивом ===
135
136 1. **Загрузить из файла** → {{{.bcfzip}}} от координатора.
137 2. Просмотр и комментарии локально.
138 3. **Сохранить BCF** с обновлениями.
139
140 ----
141
142 == Ограничения ==
143
144 - Нет автосинхронизации с Bimit (кнопка Sync отключена).
145 - Удаление комментариев — только локально добавленных.
146 - Фильтр по модели Bimit в UI не активен.
147 - Навигация BCF зависит от поддержки в плагине конкретного CAD.