Добавление процесса измерения пути
Этот процесс является интерактивным и позволяет добавить в модель новый размер 3D-пути, указав несколько точек.
Обобщенный тип процесса (TypeScript):
export type AddPathDimensionProcess = {
name: "AddPathDimension"
snap?: SnapOptions
options: C3DViewDimensionOptions
events: {
onNew?: () => string
onCreate?: (uuid: string) => C3DUserData
onValue?: (value: number) => string
}
}
Опция snap позволяет переместить точки, указанные курсором мыши пользователя, в ближайшие вершины треугольника. Подробности в разделе Опция Snap. Эта опция отключена по умолчанию.
Параметры
Этот процесс использует те же параметры, что и соответствующий объект PMI. Они описаны здесь.
Обратные вызовы
Доступные события.
onNew() генерируется перед созданием нового измерения. Возвращает строку, которая используется в качестве текста метки размера вместо значения по умолчанию.
onCreate(uuid) генерируется после создания нового измерения. Он получает UUID нового объекта и позволяет устанавливать пользовательские свойства измерения, возвращая их как объект.
onValue(value) генерируется при вычислении общей длины, получает вычисленное значение и возвращает строку текста метки размера.
Примечание
Текст метки по умолчанию при отсутствии options.text, events.New и events.onValue представляет собой просто цифру вычисленной длины между первой и последней выбранными точками.
Запуск
Чтобы запустить процесс, вам следует вызвать команду RunProcessCommand с именем процесса AddPathDimension.
Пример запуска процесса (TypeScript):
view.runCommand({
name: "RunProcessCommand",
process: {
name: "AddPathDimension",
options: {},
events: {
onValue: (value: number) => `${value.toFixed(2)} m`
}
}
})
Обновление
Обновление позволяет изменить любые опции, которые устанавливаются при запуске процесса.
Обобщенный тип команды обновления (TypeScript):
type UpdateProcess = {
name: "UpdateProcessCommand"
options: {
name: "AddPathDimension"
text?: string
underlineText?: boolean
font?: {
family?: string,
size?: number,
}
colors?: {
text?: C3DViewRGB
textBkg?: C3DViewRGB
lines?: C3DViewRGB
}
}
}
Пример команды для обновления размера шрифта размера пути (TypeScript):
view.runCommand({
name: "UpdateProcessCommand",
options: {
name: "AddPathDimension",
font: {
size: 20
}
}
})