IBimDataModelPart
IBimDataModelPart – интерфейс объекта-посредника для чтения и записи файлов модели. Наследуется от IBimDataPart.
export interface IBimDataModelPart extends IBimDataPart {
update(buffer: ArrayBuffer): Promise<void>;
mergeWith(dataPartId: string): Promise<void>;
getAllTessellations(): Promise<Map<string, BimDataTessellation>>;
getTessellations(versionFrom: bigint, versionTo: bigint): Promise<Map<string, BimDataTessellation>>;
getAllElements(): Promise<BimDataElement[]>;
getElements(versionFrom: bigint, versionTo: bigint): Promise<BimDataElement[]>;
getDiffElements(versionFrom: bigint, versionTo: bigint): Promise<BimDataElement[]>;
getElementTessellations(versionFrom: bigint, versionTo: bigint): Promise<Map<string, BimDataTessellation>>;
getElementProperties(elementId: string, version: bigint): Promise<BimDataElementPropertySet[]>;
getAllVersions(): Promise<bigint[]>;
getLatestVersion(): Promise<bigint>;
}
Методы
update()
Метод выполняет слияние файла модели с другим файлом, переданным в бинарном виде.
update(buffer: ArrayBuffer): Promise<void>;
где:
buffer
– массив данных файла модели (.bm файла).
mergeWith()
Метод дополняет текущий файл модели данными, взятыми из существующего файла модели. Выполняется слияние двух файлов модели, меняется только текущий файл.
mergeWith(sourceFileId: string): Promise<void>;
где:
sourceFileId
– идентификатор файла модели для слияния (.bm файла).
getAllTessellations()
Метод возвращает список всех тесселяций элементов модели.
getAllTessellations(): Promise<Map<string, BimDataTessellation>>;
Возвращает словарь тесселяций, где ключом является уникальный идентификатор тесселяции. Подробнее: BimDataTessellation.
getTessellations()
Метод возвращает тесселяции, версии которых находятся в указанном диапазоне. При наличии нескольких версий, возвращается тесселяция максимально возможной версии в указанном диапазоне.
getTessellations(versionFrom: bigint, versionTo: bigint): Promise<Map<string, BimDataTessellation>>;
где:
versionFrom
– начальное значение версии модели для поиска.
versionTo
– конечное значение версии модели для поиска. Должно быть больше или равно versionFrom
.
Возвращает словарь тесселяций, где ключом является уникальный идентификатор тесселяции. Подробнее: BimDataTessellation.
getAllElements()
Метод возвращает список всех элементов модели.
getAllElements(): Promise<BimDataElement[]>;
Подробнее: BimDataElement.
getElements()
Метод возвращает список элементов модели, версии которых находятся в указанном диапазоне. При наличии нескольких версий, возвращается элемент максимально возможной версии в указанном диапазоне.
getElements(versionFrom: bigint, versionTo: bigint): Promise<BimDataElement[]>;
где:
versionFrom
– начальное значение версии модели для поиска.
versionTo
– конечное значение версии модели для поиска. Должно быть больше или равно versionFrom
.
Подробнее: BimDataElement.
getDiffElements()
Метод вычисляет разницу двух версий модели и возвращает список изменившихся элементов.
getDiffElements(versionFrom: bigint, versionTo: bigint): Promise<BimDataElement[]>;
где:
versionFrom
– начальное значение версии модели для поиска.
versionTo
– конечное значение версии модели для поиска. Может быть меньше versionFrom
.
Подробнее: BimDataElement.
Тип изменения элемента указан в свойстве BimDataElement.objectState
. Подробнее: BimDataNodeState.
getElementTessellations()
Метод возвращает тесселяции элементов модели, версии которых находятся в указанном диапазоне.
При наличии нескольких версий элемента, возвращается тесселляция элемента максимально возможной версии, если диапазон задан в порядке возрастания,
или минимально возможной версии, если диапазон задан в порядке убывания версий.
Иными словами, метод возвращает тесселляции, необходимые для перестроения элементов модели при переключении версий с versionFrom
на versionTo
.
getElementTessellations(versionFrom: bigint, versionTo: bigint): Promise<Map<string, BimDataTessellation>>;
где:
versionFrom
– начальное значение версии модели для поиска.
versionTo
– конечное значение версии модели для поиска. Может быть меньше versionFrom
.
Возвращает словарь тесселяций, где ключом является уникальный идентификатор тесселяции. Подробнее: BimDataTessellation.
getElementProperties()
Метод возвращает список свойств элемента модели указанной версии.
getElementProperties(elementId: string, version: bigint): Promise<BimDataElementPropertySet[]>;
где:
elementId
– идентификатор элемента модели.
version
– версия модели.
Подробнее: BimDataElementPropertySet.
getAllVersions()
Метод возвращает список всех версий модели.
getAllVersions(): Promise<bigint[]>;
getLatestVersion()
Метод возвращает последнюю версию модели.
getLatestVersion(): Promise<bigint>;