Model
Model – это класс управления консолидированной моделью, загруженной в компонент.
Методы
getAllModelParts()
Метод возвращает все загруженные части консолидированной модели.
getAllModelParts(): ModelPart[];
getModelPart()
Метод возвращает часть консолидированной модели по её идентификатору.
getModelPart(id: string): ModelPart;
где:
id
– идентификатор части консолидированной модели.
getVisibleModelParts()
Метод возвращает все видимые части консолидированной модели.
getVisibleModelParts(): ModelPart[]
getHiddenModelParts()
Метод возвращает все скрытые части консолидированной модели.
getHiddenModelParts(): ModelPart[]
hideModelPart()
Метод позволяет скрыть часть консолидированной модели.
hideModelPart(modelPart: string | ModelPart): void;
где:
modelPart
– идентификатор или экземпляр части модели.
showModelPart()
Метод позволяет показать часть консолидированной модели.
showModelPart(modelPart: string | ModelPart): void
где:
modelPart
– идентификатор или экземпляр части модели.
hide()
Метод позволяет скрыть элементы модели.
hide(elementIds: string[] | string, modelPart?: string | ModelPart, recursive: boolean = true): void
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатываются элементы первой загруженной части модели.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: true
- скрываются также все дочерние элементы.
hideAll()
Метод позволяет скрыть все элементы и части модели.
hideAll(): void;
show()
Метод позволяет показать скрытые элементы.
show(elementIds: string[] | string, modelPart?: string | ModelPart, recursive: boolean = true): void;
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатываются элементы первой загруженной части модели.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: true
- отображаются также все дочерние элементы.
showAll()
Метод позволяет показать все элементы и части модели.
showAll(): void;
isolate()
Метод позволяет изолировать элементы одной части модели. Все неизолированные элементы модели будут скрыты.
isolate(elementIds: string[], modelPart: string | ModelPart, recursive: boolean = true): void;
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатываются элементы первой загруженной части модели.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: true
- все дочерние элементы также добавляются к изолированным элементам.
isolateMultiple()
Метод позволяет изолировать элементы модели. Все неизолированные элементы модели будут скрыты.
isolateMultiple(elements: ModelElementIds[], recursive: boolean = true): void;
где:
elements
– список идентификаторов элементов модели, сгруппированных по части модели. Подробнее: ModelElementIds.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: true
- все дочерние элементы также добавляются к изолированным элементам.
select()
Метод позволяет выделить элементы.
select(elementIds: string[] | string, modelPart: string | ModelPart, selectionMode: SelectionMode, recursive: boolean = false): void
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели.
selectionMode
– режим выделения. Подробнее: SelectionMode.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: false
- дочерние элементы не выделяются.
deselect()
Метод позволяет снять выделение с заданных элементов.
deselect(elementIds: string[] | string, modelPart?: string | ModelPart, recursive: boolean = false): void
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатываются элементы первой загруженной части модели.
recursive
– флаг, указывающий на рекурсивный обход элементов модели. По умолчанию: false
- с дочерних элементов выделение не снимается.
clearSelection()
Метод позволяет снять выделение со всех элементов модели.
clearSelection(): void;
getSelection()
Метод позволяет получить выделенные элементы модели. Подробнее: ModelElementIds.
getSelection(): ModelElementIds[];
getHiddenElements()
Метод позволяет получить все скрытые элементы. Подробнее: ModelElementIds.
getHiddenElements(): ModelElementIds[]
getIsolatedElements()
Метод позволяет получить все изолированные элементы. Подробнее: ModelElementIds.
getIsolatedElements(): ModelElementIds[]
getVisibleElements()
Метод позволяет получить все видимые элементы. Подробнее: ModelElementIds.
getVisibleElements(): ModelElementIds[]
setColor()
Метод позволяет задать цвет элементов модели.
setColor(elementIds: string[] | string, r: number, g: number, b: number, a: number, modelPart?: string | ModelPart): void
где:
elementIds
– один или несколько идентификаторов элементов модели.
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатываются элементы первой загруженной части модели.
r
– красный цвет (0-255).
g
– зеленый цвет (0-255).
b
– синий цвет (0-255).
a
– альфа-канал (0-1).
clearColors()
Метод позволяет восстановить все цвета для элементов модели.
clearColors(model? : string | ModelPart): void;
где:
modelPart
– идентификатор или экземпляр части модели. Необязательный параметр. Если этот параметр не задан, то обрабатывается первая загруженная часть модели.
setGhostMode()
Метод задает призрачный режим отображения для скрытых объектов. В этом режиме скрытые объекты отображаются на сцене в полупрозрачном, бесцветном виде.
setGhostMode(value: boolean): void;
где:
value
– задаёт активность призрачного режима.
getElementProperties()
Метод позволяет получить свойства элемента.
getElementProperties(elementId: string, modelPart?: string | ModelPart, version?: BigInt): Promise<ModelElementPropertySet[]>
где:
elementId
– идентификатор элемента.
modelPart
– идентификатор части модели или экземпляр части модели. Если этот параметр не задан, то обрабатывается первая загруженная часть модели.
version
– версия модели. Задается в тиках. Если версия не указана, то берутся свойства актуальной версии загруженной части модели.
Возвращает набор данных типа ModelElementPropertySet.
canDelete()
Метод проверяет, что переданные идентификаторы объектов соответствуют фильтрам объектов для удаления.
canDelete(elementIds: ModelElementIds[]): boolean;
где:
elementIds
– идентификаторы объектов для проверки удаления. Подробнее: ModelElementIds.
Возвращает true
, если каждый из переданных идентификаторов соответствует хотя бы одному фильтру.
delete()
Метод вызывает DELETE_OBJECTS_EVENT с переданными идентификаторами объектов модели, если каждый идентификатор соответствует хотя бы одному фильтру.
delete(elementIds: ModelElementIds[]): boolean;
где:
elementIds
– идентификаторы объектов для удаления. Подробнее: ModelElementIds.
Возвращает true
, если удалось вызвать DELETE_OBJECTS_EVENT. В противном случае возвращается false
.
addDeletionFilter()
Метод добавляет фильтр объектов для удаления.
addDeletionFilter(filter: DeleteEventFilter): void;
где:
filter
– фильтр объектов для удаления. Подробнее: DeleteEventFilter.
removeDeletionFilter()
Метод удаляет фильтр объектов для удаления.
removeDeletionFilter(filter: DeleteEventFilter): void;
где:
filter
– фильтр объектов для удаления. Подробнее: DeleteEventFilter.
setModelVersion()
Метод задает версию модели.
setModelVersion(value: bigint): Promise<void>;
где:
value
– версия модели.
getModelVersion()
Метод возвращает текущую версию модели.
getModelVersion(): bigint;
getAllModelVersions()
Метод возвращает список версий модели.
getAllModelVersions(): Promise<bigint[]>;
compareVersions()
Метод переключает часть консолидированной модели в режим сравнения версий и возвращает различия между текущей версией и заданной.
compareVersions(modelPart: string | ModelPart, versionToCompare: bigint): Promise<ModelPartVersionsDiff>;
где:
modelPart
– идентификатор или экземпляр части модели.
versionToCompare
– версия для сравнения.
Возвращает ModelPartVersionsDiff.
finishComparation()
Метод выключает режим сравнения версий части модели.
finishComparation(modelPart: string | ModelPart): Promise<void>;
где:
modelPart
– идентификатор или экземпляр части модели.
DeleteEventFilter
Фильтр объектов для удаления.
interface DeleteEventFilter {
(modelId: string, entityId: string): boolean;
}
где:
modelId
– идентификатор модели.
entityId
– идентификатор элемента модели.
Возвращает true
для объектов, которые можно удалить. В противном случае – false
.