Оглавление

Описание функционала

Типы и переменные

T2DArc

Описание: Двумерная дуга
Родительский класс: T2DElement
Свойства и методы:

T2DArc.ArcDir

Описание: Направление True - Против часовой стрелки False - По часовой стрелке.
Тип: boolean

T2DArc.Center

Описание: Точка сентра дуги
Тип: T2DPoint

T2DArc.Pos1

Описание: Точка начала дуги
Тип: T2DPoint

T2DArc.Pos2

Описание: Точка конца дуги
Тип: T2DPoint

T2DArc.From3Points(P1, P2, P3)

Описание: Построить дугу по трём точкам. Возвращает True, если построение удалось

Параметры:

P1
Тип: T2DPoint
P2
Тип: T2DPoint
P3
Тип: T2DPoint
Возвращаемый тип результата: boolean

T2DArc.InvertDir()

Описание: Обратить направление дуги. Остальные параметры не изменятся.
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T2DArc.Pos1Dir()

Описание: Перепендикуляр к касательной дуги в начальной точке. (нормализованный вектор из центра дуги к начальной точке).
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DArc.Pos2Dir()

Описание: Перепендикуляр к касательной дуги в конечной точке. (нормализованный вектор из центра дуги к конечной точке).
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DCircle

Описание: Двумерная окружность
Родительский класс: T2DElement
Свойства и методы:

T2DCircle.Center

Описание: Центр
Тип: T2DPoint

T2DCircle.CirRadius

Описание: Радиус
Тип: number

T2DElement

Описание: Базовый класс двумерного элемента контура
Свойства и методы:

T2DElement.ElType

Описание: Тип
Тип: element2DType

T2DElement.ClosestPoint(P)

Описание: Получить точку на элементе, ближайшую к заданной

Параметры:

P
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

T2DElement.DistanceToPoint(P)

Описание: Получить расстояние до заданной

Параметры:

P
Тип: T2DPoint
Возвращаемый тип результата: number

T2DElement.Gabarits(Min, Max)

Описание: Получить минимальную и максимальную точку

Параметры:

Min
Тип: ReferenceObject<T2DPoint>
Max
Тип: ReferenceObject<T2DPoint>
Возвращаемый тип результата: boolean

T2DElement.InvertDirection()

Описание: Изменить направление элемента
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T2DElement.IsArc()

Описание: Проверка, является ли элемент дугой
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElement.IsCircle()

Описание: Проверка, является ли элемент окружностью
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElement.IsLine()

Описание: Проверка, является ли элемент линией
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElement.IsList()

Описание: Проверка, является ли элемент списком элементов
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElement.Move(Dir)

Описание: Сдвиг на заданное расстояние

Параметры:

Dir
Тип: T2DPoint
Метод не возвращает результат

T2DElement.NormalOn(Param, N)

Описание: Получить вектор, перпендикулярный вектору направления элемента в точке, соответствующей параметрическому значению длины элемента. Функция возвращает True, если вектор был вычислен и False, если произвести вычисление не удалось

Параметры:

Param - Параметрическое значение в диапазоне [0, 1]. 0 - начало, 1 - конец
Тип: number
N - Возвращаемый вектор
Тип: ReferenceObject<T2DPoint>
Возвращаемый тип результата: boolean

T2DElement.ObjLength()

Описание: Общая длина.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

T2DElement.PointOn(Param, P)

Описание: Получить точку по параметрическому значению длины элемента. Функция возвращает True, если точка была вычислена и False, если произвести вычисление не удалось

Параметры:

Param - Параметрическое значение в диапазоне [0, 1]. 0 - начало, 1 - конец
Тип: number
P - Возвращаемая точка
Тип: ReferenceObject<T2DPoint>
Возвращаемый тип результата: boolean

T2DElement.Size()

Описание: Получить размер прямоугольника, описывающего элемент
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DElement.TangentOn(Param, N)

Описание: Получить вектор направления элемента в точке, соответствующей параметрическому значению длины элемента. Функция возвращает True, если вектор был вычислен и False, если произвести вычисление не удалось

Параметры:

Param - Параметрическое значение в диапазоне [0, 1]. 0 - начало, 1 - конец
Тип: number
N - Возвращаемый вектор
Тип: ReferenceObject<T2DPoint>
Возвращаемый тип результата: boolean

T2DElemList

Описание: Список двумерных элементов
Родительский класс: T2DElement
Свойства и методы:

T2DElemList.Count

Описание: Количество элементов
Тип: number

T2DElemList.Objects

Описание: Элемент по индексу
Тип: IndexedProperty<number, T2DElement>

T2DElemList.Add(Obj)

Описание: Добавить элемент

Параметры:

Obj
Тип: T2DElement
Возвращаемый тип результата: number

T2DElemList.AddArc(p1, p2, Center, Dir)

Описание: Добавить дугу.

Параметры:

p1 - Точка начала
Тип: T2DPoint
p2 - Точка конца
Тип: T2DPoint
Center - Центр
Тип: T2DPoint
Dir - Направление дуги
Тип: boolean
Возвращаемый тип результата: T2DArc

T2DElemList.AddArc3(p1, p2, p3)

Описание: Добавить дугу по трём точкам.

Параметры:

p1 - Точка 1
Тип: T2DPoint
p2 - Точка 2
Тип: T2DPoint
p3 - Точка 3
Тип: T2DPoint
Возвращаемый тип результата: T2DArc

T2DElemList.AddCircle(xc, yc, Rad)

Описание: Добавить окружность.

Параметры:

xc - Координата X центра
Тип: number
yc - Координата Y центра
Тип: number
Rad - Радиус
Тип: number
Возвращаемый тип результата: T2DCircle

T2DElemList.AddCircle(pc, Rad)

Описание: Добавить окружность.

Параметры:

pc - Точка центра
Тип: T2DPoint
Rad - Радиус
Тип: number
Возвращаемый тип результата: T2DCircle

T2DElemList.AddCopy(Obj)

Описание: Добавить копию элемента

Параметры:

Obj
Тип: T2DElement
Возвращаемый тип результата: number

T2DElemList.AddLine(x1, y1, x2, y2)

Описание: Добавить линию.

Параметры:

x1 - Координата X начальной точки
Тип: number
y1 - Координата Y начальной точки
Тип: number
x2 - Координата X конечной точки
Тип: number
y2 - Координата Y конечной точки
Тип: number
Возвращаемый тип результата: T2DLine

T2DElemList.AddLine(p1, p2)

Описание: Добавить линию.

Параметры:

p1 - Начальная точка
Тип: T2DPoint
p2 - Конечная точка
Тип: T2DPoint
Возвращаемый тип результата: T2DLine

T2DElemList.AddList(List, Copy)

Описание: Добавить элементы из списка

Параметры:

List - Список, из которого добавлять элементы
Тип: T2DElemList
Copy - Флаг - добавлять копии элементов вместо оригинала
Тип: boolean
Метод не возвращает результат

T2DElemList.AddRectangle(Min, Max)

Описание: Добавить прямоугольник

Параметры:

Min - Точка с минимальными координатами
Тип: T2DPoint
Max - Точка с максимальными координатами
Тип: T2DPoint
Метод не возвращает результат

T2DElemList.AddRectangle(Width, Height)

Описание: Добавить прямоугольник в точку (0, 0)

Параметры:

Width - Ширина
Тип: number
Height - Высота
Тип: number
Метод не возвращает результат

T2DElemList.AddRectangle(x1, y1, x2, y2)

Описание: Добавить прямоугольник

Параметры:

x1 - Минимальная координата X
Тип: number
y1 - Минимальная координата Y
Тип: number
x2 - Максимальная координата X
Тип: number
y2 - Максимальная координата Y
Тип: number
Метод не возвращает результат

T2DElemList.AddRoundRect(x1, y1, x2, y2, Rad)

Описание: Добавить скруглённый прямоугольник

Параметры:

x1 - Минимальная координата X
Тип: number
y1 - Минимальная координата Y
Тип: number
x2 - Максимальная координата X
Тип: number
y2 - Максимальная координата Y
Тип: number
Rad - Радиус скругления
Тип: number
Метод не возвращает результат

T2DElemList.Clear()

Описание: Очистить список элементов
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T2DElemList.Delete(Index)

Описание: Удалить элемент по индексу

Параметры:

Index
Тип: number
Метод не возвращает результат

T2DElemList.Delete(Obj)

Описание: Удалить элемент

Параметры:

Obj
Тип: T2DElement
Метод не возвращает результат

T2DElemList.Exchange(Index1, Index2)

Описание: Поменять местами элементы списка

Параметры:

Index1 - Индекс первого элемента
Тип: number
Index2 - Индекс второго элемента
Тип: number
Метод не возвращает результат

T2DElemList.FindNearestObject(Pos, Distance, Obj)

Описание: Найти ближайший элемент к заданной точке. Возвращает True, если элемент был найден

Параметры:

Pos - Точка.
Тип: T2DPoint
Distance - Входящее значение - максимальное расстояние до элемента Возвращаемое значение - расстояние до элемента, если он был найден
Тип: ReferenceObject<number>
Obj - Возвращаемое значение - найденный элемент
Тип: ReferenceObject<T2DElement>
Возвращаемый тип результата: boolean

T2DElemList.IndexOf(Obj)

Описание: Получить индекс элемента

Параметры:

Obj
Тип: T2DElement
Возвращаемый тип результата: number

T2DElemList.IsClosedContour()

Описание: Примитивная проверка замкнутости контура. Проверка на совпадение начальной точки первого и конечной точки второго элементов.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElemList.IsContourRectangle()

Описание: Проверка на прямоугольность контура.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElemList.IsCounterClockWise()

Описание: Проверка на направленность контура против часовой стрелки
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

T2DElemList.IsPointInside(P)

Описание: Проверка нахождения точки внутри списка элементов. Для списка элементов, не являющегося замкнутым контуром результат неопределённый.

Параметры:

P - Точка
Тип: T2DPoint
Возвращаемый тип результата: boolean

T2DElemList.IsPointInside(x, y)

Описание: Проверка нахождения точки внутри списка элементов. Для списка элементов, не являющегося замкнутым контуром результат неопределённый.

Параметры:

x - Координата X точки
Тип: number
y - Координата Y точки
Тип: number
Возвращаемый тип результата: boolean

T2DElemList.LineTo(x, y)

Описание: Построить линию из конца последнего элемента списка к указанным координатам. Если список пустой первая точка линии {0, 0}

Параметры:

x
Тип: number
y
Тип: number
Возвращаемый тип результата: T2DLine

T2DElemList.OrderContours(Closet)

Описание: Упорядочить контуры в списке. Возвращает false, если включен флаг Closet и есть незамкнутый контур

Параметры:

Closet - Флаг - проверять на замкнутость контуров
Тип: boolean
Возвращаемый тип результата: boolean

T2DLine

Описание: Двумерная линия
Родительский класс: T2DElement
Свойства и методы:

T2DLine.Pos1

Описание: Точка начала
Тип: T2DPoint

T2DLine.Pos2

Описание: Точка конца
Тип: T2DPoint

T2DLine.LineCenter()

Описание: Получить центр линии
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DLine.LineDir()

Описание: Получить вектор от точки начала до точки конца
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DLine.NormDir()

Описание: Получить нормализованный вектор направления линии
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DPoint

T2DRotationBody

Описание: Тело вращения. Контур тела должен быть расположен в положительных коордиантах по оси X. Вращение контура происходит по оси Y относительно начала ЛСК.
Родительский класс: TSolidBody
Свойства и методы:

T2DRotationBody.Contour2D

Описание: Контур.
Тип: T2DElemList

T2DTrajectoryBody

Описание: Тело выдавливания контура на плоскости по двумерной траектории.
Родительский класс: TSolidBody
Свойства и методы:

T2DTrajectoryBody.Contour2D

Описание: Контур.
Тип: T2DElemList

T2DTrajectoryBody.Trajectory2D

Описание: Траектория.
Тип: T2DElemList

T3DObjectList

Описание: Структурный объект. Содержит в себе список объектов
Родительский класс: TObject3D
Свойства и методы:

T3DObjectList.Count

Описание: Количество вложенных объектов
Тип: number

T3DObjectList.Objects

Описание: Вложенный объект по индексу
Тип: IndexedProperty<number, TObject3D>

T3DObjectList.Clear()

Описание: Удалить все вложенные объекты
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DObjectList.DeleteSelection()

Описание: Удалить все выделенные вложенные объекты (рекурсивно).
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DObjectList.IndexOf(Obj)

Описание: Получить индекс вложенного объекта. Если объект не является вложенным, возвращает -1

Параметры:

Obj - Вложенный объект
Тип: TObject3D
Возвращаемый тип результата: number

T3DObjectList.Reverse()

Описание: Изменить порядок списка в обратную сторону
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DObjectList.SetVisibleAllObjects()

Описание: Восстановить видимость всех вложенных объектов (рекурсивно)
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DObjectList.UnHighlightAll()

Описание: Снять подсветку со всех вложенных объектов (рекурсивно)
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DObjectList.UnSelectAll()

Описание: Снять выделение со всех вложенных объектов (рекурсивно)
Метод не принимает дополнительных параметров.
Метод не возвращает результат

T3DTriangle

Описание: Треугольник сетки поверхности
Свойства и методы:

T3DTriangle.Normal

Описание: Нормаль плоскости, на которой лежит треугольник
Тип: TVector3d

T3DTriangle.Normal1

Описание: Нормаль вершины 1
Тип: TVector3d

T3DTriangle.Normal2

Описание: Нормаль вершины 2
Тип: TVector3d

T3DTriangle.Normal3

Описание: Нормаль вершины 3
Тип: TVector3d

T3DTriangle.TexCoord1

Описание: Координаты текстуры вершины 1
Тип: TVector2f

T3DTriangle.TexCoord2

Описание: Координаты текстуры вершины 2
Тип: TVector2f

T3DTriangle.TexCoord3

Описание: Координаты текстуры вершины 3
Тип: TVector2f

T3DTriangle.Vertex1

Описание: Вершина 1
Тип: TVector3d

T3DTriangle.Vertex2

Описание: Вершина 2
Тип: TVector3d

T3DTriangle.Vertex3

Описание: Вершина 3
Тип: TVector3d

TAnimBlock3D

Описание: Анимированный структурный объект.
Родительский класс: T3DObjectList
Свойства и методы:

TAnimBlock3D.Animation

Описание: Анимация структурного объекта. Если у структурного объекта не было анимации, она будет создана при чтении свойства.
Тип: TFurnAnimation

TAnimBlock3D.FurnType

Описание: Тип структурного объекта (строковое значение)
Тип: string

TAnimBlock3D.SalonType

Описание: Тип для Салона. При назначении определённого типа назначится анимация по умолчанию.
Тип: salonType

TAnimBlock3D.HasAnimation()

Описание: Проверить наличие анимации структурного объекта
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

TBodyDrillInfo

Описание: Информация о сверлении отверстий в тело.
Свойства и методы:

TBodyDrillInfo.Body

Описание: Тело.
Тип: TObject3D

TBodyDrillInfo.Holes

Описание: Список просверленных отверстий.
Тип: TDrillHoleList

TBodyDrillInfoList

Описание: Информация о сверлении тел
Родительский класс: TObjectList<TBodyDrillInfo>
Свойства и методы:

TBodyDrillInfoList.FindBodyInfo(Body)

Описание: Найти информацию о сверлении тела

Параметры:

Body
Тип: TObject3D
Возвращаемый тип результата: TBodyDrillInfo

TCamera3D

Описание: Камера
Свойства и методы:

TCamera3D.AngleX

Описание: Угол поворота камеры по оси X (в градусах)
Тип: number

TCamera3D.AngleY

Описание: Угол поворота камеры по оси Y (в градусах)
Тип: number

TCamera3D.MoveX

Описание: Смещение модели по оси X (в пикселях)
Тип: number

TCamera3D.MoveY

Описание: Смещение модели по оси Y (в пикселях)
Тип: number

TCamera3D.RightDirection

Описание: Направление "вправо" относительно взгляда камеры
Тип: TVector3d

TCamera3D.Scale

Описание: Коэффициэнт масштаба
Тип: number

TCamera3D.UpDirection

Описание: Направление "вверх" относительно взгляда камеры
Тип: TVector3d

TCamera3D.ViewDirection

Описание: Направление взгляда камеры
Тип: TVector3d

TCamera3D.ViewPosition

Описание: Положение камеры
Тип: TVector3d

TCamera3D.AnimateTo(NewAngleX, NewAngleY)

Описание: Задать анимированный поворот до заданных углов

Параметры:

NewAngleX
Тип: number
NewAngleY
Тип: number
Метод не возвращает результат

TCamera3D.ToScreen(Pos)

Описание: Перевести точку из 3D-сцены в координаты экрана

Параметры:

Pos
Тип: TVector3d
Возвращаемый тип результата: T2DPoint

TContour3D

Описание: Объект - контур на плоскости. Контур располагается на плоскости XY ЛСК объекта.
Родительский класс: TPlane3DObject
Свойства и методы:

TContour3D.Contour

Описание: Контур.
Тип: T2DElemList

TCustomGroove

Описание: Многофункциональный вырез
Родительский класс: TSolidBody
Свойства и методы:

TCustomGroove.GrooveParams

Описание: Параметры многофункционального выреза.
Тип: TCustomGrooveParams2D

TCustomGroove.MakeGroovingInsideOwner

Описание: Создавать пазы внутри объекта-владельца
Тип: boolean

TCustomGroove.GetGrooveContour()

Описание: Получить контур сечения выреза. Метод возвращает контур, заданный в параметрах выреза
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DElemList

TCustomGroove.GetGrooveTrajectory()

Описание: Получить траекторию выреза. Метод возвращает траекторию, заданную в параметрах выреза
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DElemList

TCustomGrooveParams2D

Описание: Параметры многофункционального выреза
Свойства и методы:

TCustomGrooveParams2D.Contour

Описание: Контур выреза
Тип: T2DElemList

TCustomGrooveParams2D.GrooveName

Описание: Наименование паза
Тип: string

TCustomGrooveParams2D.GrooveSign

Описание: Обозначение паза
Тип: string

TCustomGrooveParams2D.PocketName

Описание: Наименование выемки
Тип: string

TCustomGrooveParams2D.PocketSign

Описание: Обозначение выемки
Тип: string

TCustomGrooveParams2D.Trajectory

Описание: Траектория выреза
Тип: T2DElemList

TCutParams

Описание: Параметры паза
Свойства и методы:

TCutParams.Angle

Описание: Угол (Fi)
Тип: number

TCutParams.CutType

Описание: Тип параметров паза
Тип: cutParamType

TCutParams.Depth

Описание: Глубина (G)
Тип: number

TCutParams.Fragment

Описание: Путь к файлу фрагмента сечения
Тип: string

TCutParams.Name

Описание: Наименование
Тип: string

TCutParams.Offset

Описание: Смещение (dx)
Тип: number

TCutParams.Offset2

Описание: Смещение (B)
Тип: number

TCutParams.Radius

Описание: Радиус (R)
Тип: number

TCutParams.Sign

Описание: Обозначение
Тип: string

TCutParams.SignFormula

Описание: Параметрическое обозначение
Тип: string

TCutParams.Width

Описание: Ширина (H)
Тип: number

TDesigner3D

Описание: Класс, содержащий пространство модели и настройки для его построения и отображения
Свойства и методы:

TDesigner3D.ActiveRoot

Описание: "Активный корень" пространства. Модель либо активынй слой
Тип: T3DObjectList

TDesigner3D.AnimateTime

Описание: Максимальное время перехода при анимации (в миллисекундах)
Тип: number

TDesigner3D.AuxLinesColor

Описание: Цвет вспомогательных линий
Тип: number

TDesigner3D.Camera

Описание: Камера
Тип: TCamera3D

TDesigner3D.DrawLimits

Описание: Рисовать габаритные рамки
Тип: boolean

TDesigner3D.HighlightedColor

Описание: Цвет подсвеченных объектов
Тип: number

TDesigner3D.LinesColor

Описание: Цвет линий
Тип: number

TDesigner3D.Model

Описание: Модель
Тип: TModel3D

TDesigner3D.ModelAccuracy

Описание: Степень детализации объектов при построении. Диапазон значений: (0.001, 1). 0.001 - Долгое построение, больше деталей. 1 - Быстрое построение, меньше деталей.
Тип: number

TDesigner3D.Perspective

Описание: Флаг перспективы. По умолчанию true
Тип: boolean

TDesigner3D.SelectionColor

Описание: Цвет выделенных объектов
Тип: number

TDesigner3D.FindObject(ID)

Описание: Найти объект по его UID

Параметры:

ID
Тип: number
Возвращаемый тип результата: TObject3D

TDesigner3D.GetObjectByID(ID)

Описание: Получить объект по его UID

Параметры:

ID
Тип: number
Возвращаемый тип результата: TObject3D

TDesigner3D.MillimetersInPixel()

Описание: Получить количество миллиметров в одном пикселе
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

TDesigner3D.Repaint()

Описание: Перерисовать окно
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TDesigner3D.UpdateTextureCoord()

Описание: Обновить координаты текстур (если были изменены)
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TDesigner3D.ViewAll(Offset, Selection)

Описание: Показать всё

Параметры:

Offset
Тип: number
Selection
Тип: boolean
Метод не возвращает результат

TDraftBlock

Описание: Полуфабрикат.
Родительский класс: TAnimBlock3D
Свойства и методы:

TDraftBlock.AsAsm

Описание: Считать полуфабрикат покупным изделием в операциях.
Тип: boolean

TDrilledHole

Описание: Параметры просверленного отверстия.
Родительский класс: THole
Свойства и методы:

TDrilledHole.Body

Описание: Тело, в которое сверлится отверстие.
Тип: TObject3D

TDrilledHole.Fastener

Описание: Фурнитура, которой принадлежит отверстие.
Тип: TFastener

TDrilledHole.OldHole

Описание: Параметры оригинального отверстия
Тип: THole

TDrillHoleList

Описание: Список просверленных отверстий.
Родительский класс: TObjectList<TDrilledHole>
Свойства и методы:

TExtrusionBody

Описание: Тело выдавливания.
Родительский класс: TSolidBody
Свойства и методы:

TCustomExtrusionBody.Contour

Описание: Контур.
Тип: T2DElemList

TCustomExtrusionBody.Thickness

Описание: Глубина выдавливания.
Тип: number

TFastener

Описание: Объект - фурнитура.
Родительский класс: TTriMesh
Свойства и методы:

TFastener.DatumMode

Описание: Тип установки.
Тип: datumMode

TFastener.Holes

Описание: Список отверстий.
Тип: THoleList

TFastener.GenerateNewId()

Описание: Сгененрировать новый ID фурнитуры
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFastener.ReCalcGabarits()

Описание: Пересчитать габаритные размеры фурнитуры
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFastenerDrillInfo

Описание: Информация о сверлении фурнитуры.
Свойства и методы:

TFastenerDrillInfo.Fastener

Описание: Фурнитура.
Тип: TFastener

TFastenerDrillInfo.Holes

Описание: Список просверленных отверстий.
Тип: TDrillHoleList

TFurnAnimation

Описание: Анимация
Свойства и методы:

TFurnAnimation.AxisEnd

Описание: Конечная точка оси анимации. При повороте нормализованный вектор оси анимации задаёт ось поворота При сдвиге вектор оси анимации задаёт смещение объекта
Тип: TVector3d

TFurnAnimation.AxisStart

Описание: Начальная точка оси анимации
Тип: TVector3d

TFurnAnimation.DoorAngle

Описание: Угол поворота
Тип: number

TFurnAnimation.DoorShift

Описание: Сдвиг при анимации поворота
Тип: number

TFurnAnimation.Duration

Описание: Длительность анимации (в секундах)
Тип: number

TFurnAsm

Описание: Покупное изделие
Родительский класс: TAnimBlock3D
Свойства и методы:

TFurnBlock

Описание: Блок.
Родительский класс: TAnimBlock3D
Свойства и методы:

TFurnBlock.DatumMode

Описание: Тип установки.
Тип: datumMode

TFurnButt

Описание: Облицовка кромки.
Свойства и методы:

TFurnButt.Allowance

Описание: Припуск.
Тип: number

TFurnButt.ClipPanel

Описание: Подрезать панель на толщину кромки.
Тип: boolean

TFurnButt.CutIndex

Описание: Номер отреза. -1 = одиночный отрез.
Тип: number

TFurnButt.ElemIndex

Описание: Индекс элемента контура, на который наносится кромка.
Тип: number

TFurnButt.Material

Описание: Наименование материала.
Тип: string

TFurnButt.Overhung

Описание: Свес.
Тип: number

TFurnButt.Sign

Описание: Обозначение.
Тип: string

TFurnButt.Thickness

Описание: Толщина.
Тип: number

TFurnButt.Width

Описание: Ширина.
Тип: number

TFurnButtList

Описание: Список кромок.
Свойства и методы:

TFurnButtList.Butts

Описание: Кромка по индексу.
Тип: IndexedProperty<number, TFurnButt>

TFurnButtList.Count

Описание: Количество.
Тип: number

TFurnButtList.Add()

Описание: Добавить новую кромку
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnButt

TFurnButtList.Clear()

Описание: Очистить список
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFurnButtList.Delete(Index)

Описание: Удалить кромку по индексу

Параметры:

Index
Тип: number
Метод не возвращает результат

TFurnButtList.FindButt(ElemIndex)

Описание: Найти первую кромку, имеющую указанный индекс элемента контура

Параметры:

ElemIndex
Тип: number
Возвращаемый тип результата: TFurnButt

TFurnButtList.IndexOf(Butt)

Описание: Получить индекс кромки

Параметры:

Butt
Тип: TFurnButt
Возвращаемый тип результата: number

TFurnButtList.NewCutIndex()

Описание: Получить новый номер отреза
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

TFurnButtList.Remove(Butt)

Описание: Удалить кромку из списка

Параметры:

Butt
Тип: TFurnButt
Метод не возвращает результат

TFurnCut

Описание: Паз панели.
Свойства и методы:

TFurnCut.Contour

Описание: Контур сечения.
Тип: T2DElemList

TFurnCut.CutType

Описание: Тип паза
Тип: cutType

TFurnCut.FrontSide

Описание: Флаг - паз размещён на лицевой стороне панели
Тип: boolean

TFurnCut.Name

Описание: Наименование.
Тип: string

TFurnCut.Panel

Описание: Панель
Тип: TFurnPanel

TFurnCut.Params

Описание: Параметры паза.
Тип: TCutParams

TFurnCut.Sign

Описание: Обозначение.
Тип: string

TFurnCut.Thickness

Описание: Глубина выемки. Отрицательное значение - выемка с обратной стороны панели
Тип: number

TFurnCut.Trajectory

Описание: Траектория паза.
Тип: T2DElemList

TFurnCut.CreateParams()

Описание: Создать параметры паза
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFurnCut.DeleteParams()

Описание: Удалить параметры паза
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFurnCutList

Описание: Список пазов.
Свойства и методы:

TFurnCutList.Count

Описание: Количество.
Тип: number

TFurnCutList.Cuts

Описание: Паз по индексу.
Тип: IndexedProperty<number, TFurnCut>

TFurnCutList.Add()

Описание: Добавить новый паз
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnCut

TFurnCutList.Clear()

Описание: Очистить список
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFurnCutList.Delete(Index)

Описание: Удалить паз по индексу

Параметры:

Index
Тип: number
Метод не возвращает результат

TFurnPanel

Описание: Панель.
Родительский класс: TSolidBody
Свойства и методы:

TFurnPanel.Bent

Описание: Флаг - гнутая панель.
Тип: boolean

TFurnPanel.BentContour

Описание: Траектория гнутой панели.
Тип: T2DElemList

TFurnPanel.BentDirection

Описание: Направление выдавливания панели.
Тип: faceType

TFurnPanel.Butts

Описание: Список облицовок кромки.
Тип: TFurnButtList

TFurnPanel.Contour

Описание: Контур.
Тип: T2DElemList

TFurnPanel.Cuts

Описание: Список пазов.
Тип: TFurnCutList

TFurnPanel.FrontFace

Описание: Лицевая сторона.
Тип: faceType

TFurnPanel.HighZ

Описание: Максимальная координата по локальной оси Z. Значение обновляется после перестроения панели.
Тип: number

TFurnPanel.InterlayerThickness

Описание: Толщина между слоями гнутой панели
Тип: number

TFurnPanel.LowZ

Описание: Минимальная координата по локальной оси Z. Значение обновляется после перестроения панели.
Тип: number

TFurnPanel.MiddleZ

Описание: Средняя координата по локальной оси Z. Значение обновляется после перестроения панели.
Тип: number

TFurnPanel.Plastics

Описание: Список облицовок пласти.
Тип: TFurnPlasticList

TFurnPanel.TextureOrientation

Описание: Ориентация текстуры.
Тип: textureOrientation

TFurnPanel.Thickness

Описание: Толщина.
Тип: number

TFurnPanel.ZThickness

Описание: Общее значение толщины по оси Z. Значение обновляется после перестроения панели.
Тип: number

TFurnPlastic

Описание: Облицовка пласти.
Свойства и методы:

TFurnPlastic.Material

Описание: Наименование материала.
Тип: string

TFurnPlastic.MaterialWidth

Описание: Ширина материала. Значение больше 0 соответствует погонному материалу. Значене 0 соответствует площадному материалу.
Тип: number

TFurnPlastic.Side

Описание: Сторона нанесения.
Тип: faceType

TFurnPlastic.TextureOrientation

Описание: Ориентация текстуры.
Тип: textureOrientation

TFurnPlastic.Thickness

Описание: Толщина.
Тип: number

TFurnPlasticList

Описание: Список облицовок пласти.
Свойства и методы:

TFurnPlasticList.Count

Описание: Количество.
Тип: number

TFurnPlasticList.Plastics

Описание: Облицовка по индексу.
Тип: IndexedProperty<number, TFurnPlastic>

TFurnPlasticList.Add()

Описание: Добавить новую облицовку пласти
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnPlastic

TFurnPlasticList.Clear()

Описание: Очистить список
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TFurnPlasticList.Delete(Index)

Описание: Удалить облицовку пласти по индексу

Параметры:

Index
Тип: number
Метод не возвращает результат

TFurnPlasticList.FindLastPlastic(Side)

Описание: Найти последний пластик, нанесённый на указанную сторону

Параметры:

Side
Тип: faceType
Возвращаемый тип результата: TFurnPlastic

TFurnPlasticList.Remove(Plastic)

Описание: Удалить облицовку пласти

Параметры:

Plastic
Тип: TFurnPlastic
Метод не возвращает результат

THole

Описание: Параметры отверстия
Свойства и методы:

THole.Contour

Описание: Контур.
Тип: T2DElemList

THole.Depth

Описание: Глубина.
Тип: number

THole.Diameter

Описание: Диаметр.
Тип: number

THole.Direction

Описание: Направление.
Тип: TVector3d

THole.DrillMode

Описание: Тип сверления
Тип: holeDrillMode

THole.Position

Описание: Положение.
Тип: TVector3d

THole.Radius

Описание: Радиус.
Тип: number

THoleDrilling

Описание: Объект, реализующий алгоритмы сверления отверстий в тела.
Свойства и методы:

THoleDrilling.Bodies

Описание: Информация о сверлении тел
Тип: TBodyDrillInfoList

THoleDrilling.Fasteners

Описание: Информация о сверлении фурнитуры
Тип: TObjectList<TFastenerDrillInfo>

THoleDrilling.AddBodies(Root)

Описание: Добавить тела (рекурсивно).

Параметры:

Root - Структурный объект. Все тела внутри объекта будут добавлены.
Тип: T3DObjectList
Метод не возвращает результат

THoleDrilling.AddBodiesAndFasteners(Root)

Описание: Добавить объекты фурнитуры и тела из структурного объекта (рекурсивно).

Параметры:

Root - Структурный объект
Тип: T3DObjectList
Метод не возвращает результат

THoleDrilling.AddBody(Body)

Описание: Добавить тело.

Параметры:

Body
Тип: TObject3D
Метод не возвращает результат

THoleDrilling.AddFastener(Fastener)

Описание: Добавить объект фурнитуры.

Параметры:

Fastener
Тип: TFastener
Метод не возвращает результат

THoleDrilling.AddFasteners(Root)

Описание: Добавить объекты фурнитуры (рекурсивно).

Параметры:

Root - Структурный объект. Все внутренние объекты фурнитуры будут добавлены.
Тип: T3DObjectList
Метод не возвращает результат

THoleDrilling.DrillHoles()

Описание: Выполнить расчёт сверления отверстий.
Метод не принимает дополнительных параметров.
Метод не возвращает результат

THoleList

Описание: Список отверстий.
Родительский класс: TObjectList<THole>
Свойства и методы:

THoleList.NewHole()

Описание: Создать новое отверстие
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: THole

TImportedMesh

Описание: Импортированный (нередактируемый) полигональный объект
Родительский класс: TTriMesh
Свойства и методы:

TLayer3D

Описание: Объект-слой
Родительский класс: T3DObjectList
Свойства и методы:

TLayer3D.Active

Описание: Флаг - является ли слой активным
Тип: boolean

TLayer3D.Selectable

Описание: Флаг - можно ли выделить объекты внутри слоя
Тип: boolean

TList<T>

Описание: Список значений определённого типа
Свойства и методы:

TList<T>.Count

Описание: Количество элементов
Тип: number

TList<T>.Items

Описание: Элемент по индексу
Тип: IndexedProperty<number, T>

TMaterial

Описание: Материал объекта
Свойства и методы:

TMaterial.DiffuseColor

Описание: Цвет материала
Тип: number

TMaterial.MaterialName

Описание: Имя материала
Тип: string

TMaterial.Path

Описание: Путь к текстуре
Тип: string

TMaterial.PathAbsolute()

Описание: Получить абсолютный путь к текстуре
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: string

TModel3D

Описание: Модель
Родительский класс: T3DObjectList
Свойства и методы:

TModel3D.HighlightCount

Описание: Количество подсвеченных объектов
Тип: number

TModel3D.HighlightedObj

Описание: Подсвеченный объект модели (если количество подсвеченных объектов = 1)
Тип: TObject3D

TModel3D.Highlights

Описание: Подсвеченный объект по индексу
Тип: IndexedProperty<number, TObject3D>

TModel3D.Selected

Описание: Выделенный объект модели (если количество выделенных объектов = 1)
Тип: TObject3D

TModel3D.SelectedObj

Описание: Выделенный объект модели (если количество выделенных объектов = 1)
Тип: TObject3D

TModel3D.SelectionCount

Описание: Количество выделенных объектов модели
Тип: number

TModel3D.Selections

Описание: Выделенный объект по индексу
Тип: IndexedProperty<number, TObject3D>

TModel3D.UnHighlightAll()

Описание: Сбросить подсветку всех объектов
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TModel3D.UnPickAll()

Описание: Сбросить выделение и подсветку всех объектов.
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TModel3D.UnSelectAll(ExceptObj)

Описание: Сбросить выделение всех объектов. Можно задать объект, выделение которого не будет сбрасываться.

Параметры:

ExceptObj - Объект, выделение которого не нужно сбрасывать
Тип: TObject3D
Метод не возвращает результат

TModelLimits

Описание: Габаритная рамка.
Родительский класс: TTriMesh
Свойства и методы:

TModelLimits.Depth

Описание: Глубина.
Тип: number

TModelLimits.GridSize

Описание: Размер сетки.
Тип: number

TModelLimits.Height

Описание: Высота.
Тип: number

TModelLimits.LimitSize

Описание: Габаритные размеры
Тип: TVector3d

TModelLimits.Width

Описание: Ширина.
Тип: number

TObject3D

Описание: Базовый класс для трёхмерных объектов
Свойства и методы:

TObject3D.ArtPos

Описание: Позиция объекта
Тип: string

TObject3D.Color

Описание: Цвет линий объекта. clNone - использовать цвет линий объекта-владельца
Тип: number

TObject3D.Designation

Описание: Обозначение объекта
Тип: string

TObject3D.DS

Описание: Объект, владеющий информацией о пространстве
Тип: TDesigner3D

TObject3D.GabMax

Описание: Максимальная точка габаритного параллелепипеда, описывающего объект относительно ГСК объекта
Тип: TVector3d

TObject3D.GabMin

Описание: Минимальная точка габаритного параллелепипеда, описывающего объект относительно ГСК объекта
Тип: TVector3d

TObject3D.GCenter

Описание: Центр габаритного параллелепипеда, описывающего объект относительно ЛСК объекта
Тип: TVector3d

TObject3D.GMax

Описание: Максимальная точка габаритного параллелепипеда, описывающего объект относительно ЛСК объекта
Тип: TVector3d

TObject3D.GMin

Описание: Минимальная точка габаритного параллелепипеда, описывающего объект относительно ЛСК объекта
Тип: TVector3d

TObject3D.GSize

Описание: Размер габаритного параллелепипеда, описывающего объект относительно ЛСК объекта
Тип: TVector3d

TObject3D.Highlighted

Описание: Флаг - непосредственная подсветка объекта
Тип: boolean

TObject3D.IsAssemblyUnit

Описание: Флаг - является ли объект сборочной единицей
Тип: boolean

TObject3D.List

Описание: Является ли объект структурным
Тип: boolean

TObject3D.LocalMatrix

Описание: Матрица трансформации из ЛСК объекта в ЛСК объекта-владельца
Тип: TMatrix4

TObject3D.MakeAssemblyDrawing

Описание: Флаг - создавать сборочный чертёж
Тип: boolean

TObject3D.MakeExplodedView

Описание: Флаг - создавать схему сборки
Тип: boolean

TObject3D.Model

Описание: Модель, частью которой является объект
Тип: TModel3D

TObject3D.Name

Описание: Имя объекта
Тип: string

TObject3D.Notes

Описание: Заметки
Тип: string

TObject3D.Owner

Описание: Структурный объект (владелец), внутри которого находится данный объект
Тип: T3DObjectList

TObject3D.OwnerIndex

Описание: Индекс объекта внутри структурного объекта
Тип: number

TObject3D.Picked

Описание: Флаг - является ли объект выбранным Результат при чтении - наличие флага Selected или Highlighted При записи: True - Задаёт флаг Selected False - сбрасывает флаги Selected и Highlighted
Тип: boolean

TObject3D.Position

Описание: Положение объекта. Значение относительно ЛСК объекта-владельца
Тип: TVector3d

TObject3D.PositionX

Описание: Положение объекта по оси X. Значение относительно ЛСК объекта-владельца
Тип: number

TObject3D.PositionY

Описание: Положение объекта по оси Y. Значение относительно ЛСК объекта-владельца
Тип: number

TObject3D.PositionZ

Описание: Положение объекта по оси Z. Значение относительно ЛСК объекта-владельца
Тип: number

TObject3D.Selected

Описание: Флаг - непосредственное выделение объекта
Тип: boolean

TObject3D.Transformation

Описание: Ориентация объекта. Содержит вектор положения и кватернион поворота
Тип: TTransformation

TObject3D.UID

Описание: Уникальный идентификатор (UID) объекта
Тип: number

TObject3D.UseInCNC

Описание: Флаг - использовать в ЧПУ
Тип: boolean

TObject3D.UseInCutting

Описание: Флаг - использовать в Раскрое
Тип: boolean

TObject3D.UseInDocs

Описание: Флаг - использовать в документации
Тип: boolean

TObject3D.UseInEstimate

Описание: Флаг - использовать в Смете
Тип: boolean

TObject3D.UseInInspection

Описание: Флаг - учитывать в анализе модели
Тип: boolean

TObject3D.UserPropCount

Описание: Количество пользовательских свойств
Тип: number

TObject3D.UserProperty

Описание: Пользовательское свойство по имени (текст) либо индексу (число). Для удаления свойства, назначить ему Unassigned или undefined
Тип: IndexedProperty<number, number | string>

TObject3D.UserPropertyName

Описание: Имя пользовательского свойства с указанным индексом
Тип: IndexedProperty<number, string>

TObject3D.UserPropertyVariants

Описание: Варианты значения пользовательского свойства.
Тип: IndexedProperty<number, string>

TObject3D.Visible

Описание: Флаг - непосредственная видимость объекта
Тип: boolean

TObject3D.AsList()

Описание: Получить объект, приведённый к типу структурного объекта
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T3DObjectList

TObject3D.AsMesh()

Описание: Получить объект, приведённый к типу полигонального объекта
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TTriMesh

TObject3D.AssignTransform(Src)

Описание: Принять ориентацию объекта

Параметры:

Src - Объект, ориентация которого будет принята
Тип: TObject3D
Метод не возвращает результат

TObject3D.Build()

Описание: Перестроить объект. Для параметрических объектов удалется вся геометрия и строится новая исходя из параметров объекта.
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TObject3D.Clone()

Описание: Создать копию объекта в том же пространстве, что и объект
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TObject3D

TObject3D.Clone(Dest)

Описание: Создать копию объекта в заданном пространстве

Параметры:

Dest - Новое пространство для копии
Тип: TDesigner3D
Возвращаемый тип результата: TObject3D

TObject3D.CloneTemp()

Описание: Создать копию объекта во временной области модели текущего пространства
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TObject3D

TObject3D.FindCommonOwner(Obj)

Описание: Найти ближайшего общего владельца с другим объектом

Параметры:

Obj
Тип: TObject3D
Возвращаемый тип результата: T3DObjectList

TObject3D.GlobalMatrix()

Описание: Получить матрицу трансформации из ЛСК объекта в ГСК
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TMatrix4

TObject3D.GlobalToObject(V)

Описание: Перевести точку из ГСК в ЛСК объекта

Параметры:

V
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.HasUserProperty(Name)

Описание: Проверить, есть ли пользовательское свойство с указанным именем

Параметры:

Name - Имя пользовательского свойства
Тип: string
Возвращаемый тип результата: boolean

TObject3D.IsHighlighted()

Описание: Получить булево значение, является ли объект подсвеченным. Возвращает True, если объект или один из его владельцев, вплоть до модели или её временной области, являются подсвеченными.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

TObject3D.IsMesh()

Описание: Получить булево значение, является ли объект полигональным
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

TObject3D.IsOwner(Obj)

Описание: Проверка, находится ли объект внутри указанного объекта (является ли указанный объект владельцем объекта).

Параметры:

Obj - Возможный объект-владелец
Тип: TObject3D
Возвращаемый тип результата: boolean

TObject3D.IsSelected()

Описание: Получить булево значение, является ли объект выделенным. Возвращает True, если объект или один из его владельцев, вплоть до модели или её временной области, являются выделенными.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

TObject3D.IsVisible()

Описание: Получить булево значение, является ли объект видимым. Возвращает True, если объект и все его владельцы, вплоть до модели или её временной области, являются видимыми.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

TObject3D.NGlobalToLocal(N)

Описание: Перевести вектор из ГСК в ЛСК объекта-владельца

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NGlobalToObject(N)

Описание: Перевести вектор из ГСК в ЛСК объекта

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NObjectToGlobal(N)

Описание: Перевести вектор из ЛСК объекта в ГСК

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NObjectToLocal(N)

Описание: Перевести вектор из ЛСК объекта в ЛСК объекта-владельца

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NObjectToObject(SrcObj, N)

Описание: Перевести вектор из ЛСК другого объекта в ЛСК объекта

Параметры:

SrcObj - Другой объект
Тип: TObject3D
N - Вектор
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NToGlobal(N)

Описание: Перевести вектор из ЛСК объекта в ГСК Эквивалентно методу NObjectToGlobal

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.NToObject(N)

Описание: Перевести вектор из ГСК в ЛСК объекта Эквивалентно методу NGlobalToObject

Параметры:

N
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.ObjectToGlobal(V)

Описание: Перевести точку из ЛСК объекта в ГСК

Параметры:

V
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.ObjectToLocal(V)

Описание: Перевести точку из ЛСК объекта в ЛСК объекта-владельца

Параметры:

V
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.ObjectToObject(SrcObj, V)

Описание: Перевести точку из ЛСК другого объекта в ЛСК объекта

Параметры:

SrcObj - Другой объект
Тип: TObject3D
V - Точка
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.Orient(ZDir, YDir)

Описание: Задать поворот объекта.

Параметры:

ZDir - Новая ось Z в ЛСК объекта-родителя
Тип: TVector3d
YDir - Новая ось Y в ЛСК объекта-родителя
Тип: TVector3d
Метод не возвращает результат

TObject3D.OrientGCS(ZDir, YDir)

Описание: Задать поворот объекта.

Параметры:

ZDir - Новая ось Z в ГСК
Тип: TVector3d
YDir - Новая ось Y в ГСК
Тип: TVector3d
Метод не возвращает результат

TObject3D.RayIntersect(Ray)

Описание: Проверка пересечения лучом. Положение и направление луча должны быть в ЛСК объекта.

Параметры:

Ray - Параметры луча
Тип: TRayInfo
Метод не возвращает результат

TObject3D.ReTransform(OldOwner, NewOwner)

Описание: Изменить ориентацию (положение и поворот) объекта относительно нового владельца. Функция полезна при смене владельца объекта для сохранения фактического положения объекта относительно ГСК

Параметры:

OldOwner - Старый объект-владелец
Тип: T3DObjectList
NewOwner - Новый объект-владелец
Тип: T3DObjectList
Метод не возвращает результат

TObject3D.Rotate(Axis, Angle)

Описание: Повернуть объект вокруг оси

Параметры:

Axis - Ось поворота в ЛСК объекта-владельца
Тип: TVector3d
Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.Rotate(Center, Axis, Angle)

Описание: Повернуть объект вокруг произвольной точки

Параметры:

Center - Точка поворота в ГСК
Тип: TVector3d
Axis - Ось поворота в ЛСК объекта-владельца
Тип: TVector3d
Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.RotateGCS(Axis, Angle)

Описание: Повернуть объект вокруг оси

Параметры:

Axis - Ось поворота в ГСК
Тип: TVector3d
Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.RotateInCurSys(Axis, Angle)

Описание: Повернуть объект вокруг оси

Параметры:

Axis - Ось поворота в ЛСК объекта
Тип: TVector3d
Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.RotateX(Angle)

Описание: Повернуть объект вокруг оси X в ЛСК объекта-владельца

Параметры:

Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.RotateY(Angle)

Описание: Повернуть объект вокруг оси Y в ЛСК объекта-владельца

Параметры:

Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.RotateZ(Angle)

Описание: Повернуть объект вокруг оси Z в ЛСК объекта-владельца

Параметры:

Angle - Угол поворота (в радианах)
Тип: number
Метод не возвращает результат

TObject3D.SetDefaultTransform()

Описание: Установить ориентацию по умолчанию (нулевое смещение и нулевой поворот)
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TObject3D.ToGlobal(V)

Описание: Перевести точку из ЛСК объекта в ГСК Эквивалентно методу ObjectToGlobal

Параметры:

V
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.ToObject(V)

Описание: Перевести точку из ГСК в ЛСК объекта Эквивалентно методу GlobalToObject

Параметры:

V
Тип: TVector3d
Возвращаемый тип результата: TVector3d

TObject3D.Translate(x, y, z)

Описание: Переместить объект на заданный вектор в ЛСК объекта-владельца.

Параметры:

x
Тип: number
y
Тип: number
z
Тип: number
Метод не возвращает результат

TObject3D.Translate(V)

Описание: Переместить объект на заданный вектор в ЛСК объекта-владельца.

Параметры:

V
Тип: TVector3d
Метод не возвращает результат

TObject3D.TranslateGCS(V)

Описание: Переместить объект на заданный вектор в ГСК.

Параметры:

V
Тип: TVector3d
Метод не возвращает результат

TObject3D.TranslateInCurSys(x, y, z)

Описание: Переместить объект на заданный вектор в ЛСК объекта.

Параметры:

x
Тип: number
y
Тип: number
z
Тип: number
Метод не возвращает результат

TObject3D.TranslateLCS(V)

Описание: Переместить объект на заданный вектор в ЛСК объекта.

Параметры:

V
Тип: TVector3d
Метод не возвращает результат

TObjectList<T>

Описание: Список объектов
Родительский класс: TList<T>
Свойства и методы:

TPlane3DObject

Описание: Трёхмерный объект с двумерной геометрией
Родительский класс: TObject3D
Свойства и методы:

TRayInfo

Описание: Объект для проверки пересечения объектов лучом
Свойства и методы:

TRayInfo.Direction

Описание: Направление луча
Тип: TVector3d

TRayInfo.Distance

Описание: Максимальное расстояние для обнаружения пересечения. После проверки пересечения возвращает расстояние до пересечения. либо заданное максимальное расстояние (если пересечение не было обнаружено).
Тип: number

TRayInfo.ExcludedObject

Описание: Объект, исключённый из проверки пересечения
Тип: TObject3D

TRayInfo.FindFirstIntersection

Описание: Флаг - искать первое пересечение (по структуре объектов) Если флаг выставлен, при нахождении первого пересечения проверка будет осатновлена. Иначе будет проверена вся доступная структура объектов для поиска минимального расстояния до пересечения
Тип: boolean

TRayInfo.InterPos

Описание: Точка пересечения.
Тип: TVector3d

TRayInfo.IntersectBackFaces

Описание: Флаг - проверять поверхности, если луч проходит через их "заднюю" сторону
Тип: boolean

TRayInfo.Intersected

Описание: Флаг - пересечение обнаружено
Тип: boolean

TRayInfo.IntersectHiddenObjects

Описание: Флаг - проверять пересечения со скрытыми объектами
Тип: boolean

TRayInfo.Object3D

Описание: Объект, с которым было обнаружено пересечение
Тип: TObject3D

TRayInfo.Position

Описание: Положение луча
Тип: TVector3d

TRayInfo.Pop()

Описание: Восстановить предыдущую запомненную ориентацию луча.
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TRayInfo.Push(TransformObj)

Описание: Запомнить текущую ориентацию луча и добавить ориентацию объекта к лучу Основное использование - перевод луча из СК владельца данного объекта в СК самого объекта

Параметры:

TransformObj - Объект, ориентация которого будет добавлена.
Тип: TObject3D
Метод не возвращает результат

TRayInfo.Start()

Описание: Обнулить данные о пересечении
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TRayInfo.Transform(Matrix)

Описание: Преобразовать ориентацию луча

Параметры:

Matrix - Дополнительное преобразование (смещение и поворот) луча
Тип: TMatrix4
Метод не возвращает результат

TSize3D

Описание: Объект - размер. Элементы размера лежат на плоскости XY ЛСК объекта, где ось X идёт вдоль длины размера, а ось Y вдоль высоты размера.
Родительский класс: TPlane3DObject
Свойства и методы:

TSize3D.Length

Описание: Высота размерной линии.
Тип: number

TSize3D.Size

Описание: Длина размерной линии. Назначение длины назначает и значение размера.
Тип: number

TSize3D.TextSize

Описание: Размер текста.
Тип: number

TSize3D.Value

Описание: Значение размера.
Тип: number

TSolidBody

Описание: Твёрдое тело.
Родительский класс: TTriMesh
Свойства и методы:

TSolidBody.MaterialWidth

Описание: Ширина материала. Значение больше 0 соответствует погонному материалу. Значене 0 соответствует площадному материалу.
Тип: number

TTriangleList

Описание: Список треугольников поверхности
Свойства и методы:

TTriangleList.Count

Описание: Количество треугольников
Тип: number

TTriangleList.Material

Описание: Материал поверхности
Тип: TMaterial

TTriangleList.Owner

Описание: Полигональный объект-владелец
Тип: TTriMesh

TTriangleList.Triangles

Описание: Треугольник по индексу
Тип: IndexedProperty<number, T3DTriangle>

TTriMesh

Описание: Полигональный объект
Родительский класс: TObject3D
Свойства и методы:

TTriMesh.Material

Описание: Материал объекта.
Тип: TMaterial

TTriMesh.MaterialName

Описание: Наименование материала (с артикулом)
Тип: string

TTriMesh.TriLists

Описание: Поверхность по индексу
Тип: IndexedProperty<number, TTriangleList>

TTriMesh.TriListsCount

Описание: Количество поверхностей
Тип: number

TTriMesh.ClearTriLists()

Описание: Удалить все поверхности объекта
Метод не принимает дополнительных параметров.
Метод не возвращает результат

TTriMesh.TriCount()

Описание: Получить общее количество треугольников объекта
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

ReferenceObject<T>

Описание: Объект-обёртка, содержащий значение. Используется для передачи значений по ссылке при использовании методов
Свойства и методы:

ReferenceObject<T>.value

Описание: Значение
Тип: T

ButtMaterialData

Добавлено в версии 1
Описание: Параметры материала кромки
Свойства и методы:

ButtMaterialData.allowance

Описание: Припуск
Тип: number

ButtMaterialData.cutName

Описание: Наименование торцевого паза для канта
Тип: string

ButtMaterialData.doClipPanel

Описание: Флаг - подрезать панель на толщину кромки
Тип: boolean

ButtMaterialData.edging

Описание: Путь к файлу фрагмента сечения канта
Тип: string

ButtMaterialData.isTape

Описание: Флаг - Лента
Тип: boolean

ButtMaterialData.name

Описание: Наименование
Тип: string

ButtMaterialData.overhung

Описание: Свес
Тип: number

ButtMaterialData.sign

Описание: Обозначение
Тип: string

ButtMaterialData.thickness

Описание: Толщина
Тип: number

ButtMaterialData.width

Описание: Ширина
Тип: number

ElasticParameters

Добавлено в версии 3
Описание: Параметры эласчичности
Свойства и методы:

ElasticParameters.planes

Описание: Плоскости эластичности
Тип: ElasticPlane[]

ElasticParameters.sizeMax

Описание: Максимальный размер эластичного объекта
Тип: TVector3d

ElasticParameters.sizeMin

Описание: Минимальный размер эластичного объекта
Тип: TVector3d

ElasticParameters.sizeStep

Описание: Шаг изменения размера эластичного объекта
Тип: TVector3d

ElasticPlane

Добавлено в версии 3
Описание: Описание эластичной плоскости
Свойства и методы:

ElasticPlane.axis

Описание: Ось эластичной плоскости
Тип: ElasticAxis

ElasticPlane.position

Описание: Положение эластичной плоскости (значение на оси)
Тип: number

ElasticPlane.weight

Описание: Вес эластичной плоскости
Тип: number

EstimateObject

Добавлено в версии 6
Описание: Объект скрипта модуля "БАЗИС-Смета"
Свойства и методы:

EstimateObject.AsButt()

Добавлено в версии 6
Описание: Получить объект облицовки кромки
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnButt

EstimateObject.AsExtrusionBody()

Добавлено в версии 6
Описание: Получить объект профиля
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TExtrusionBody

EstimateObject.AsPanel()

Добавлено в версии 6
Описание: Получить объект панели
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnPanel

EstimateObject.AsPlastic()

Добавлено в версии 6
Описание: Получить объект облицовки пласти
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: TFurnPlastic

EstimateObject.AsTrajectoryBody()

Добавлено в версии 6
Описание: Получить объект тела по траектории
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: T2DTrajectoryBody

EstimateObject.IsButt()

Добавлено в версии 6
Описание: Проверить, хранит ли объект облицовку кромки
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

EstimateObject.IsExtrusionBody()

Добавлено в версии 6
Описание: Проверить, хранит ли объект профиль
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

EstimateObject.IsPanel()

Добавлено в версии 6
Описание: Проверить, хранит ли объект панель
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

EstimateObject.IsPlastic()

Добавлено в версии 6
Описание: Проверить, хранит ли объект облицовку пласти
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

EstimateObject.IsTrajectoryBody()

Добавлено в версии 6
Описание: Проверить, хранит ли объект тело по траектории
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: boolean

FurnMaterialData

Добавлено в версии 1
Описание: Параметры материала
Свойства и методы:

FurnMaterialData.name

Описание: Наименование
Тип: string

FurnMaterialData.thickness

Описание: Толщина
Тип: number

FurnMaterialData.width

Описание: Ширина
Тип: number

GroovingOptions

Добавлено в версии 5
Описание: Параметры применения многофункционального выреза
Свойства и методы:

GroovingOptions.deleteCustomGrooveObjects

Описание: Удалять вырез после применения. Значение по умолчанию - true
Тип: boolean

GroovingOptions.deletePanelIfItIsCoveredByGroove

Описание: Удалять панель, если она внутри выреза (применения выреза делает панель пустой). Значение по умолчанию - true
Тип: boolean

GroovingOptions.makeContourSubtractionInsteadOfThroughPocket

Описание: Делать вычитание контура вместо сквозной выемки. Значение по умолчанию - false
Тип: boolean

GroovingOptions.visiblePanelsOnly

Описание: Применять только к видимым панелям. Значение по умолчанию - true
Тип: boolean

ObjectAdditionalMaterial

Описание: Дополнительный материал объекта
Свойства и методы:

ObjectAdditionalMaterial.art

Описание: Артикул
Тип: string

ObjectAdditionalMaterial.count

Описание: Количество
Тип: number

ObjectAdditionalMaterial.measure

Описание: Единицы измерения
Тип: string

ObjectAdditionalMaterial.name

Описание: Наименование
Тип: string

T2DPoint

Описание: Точка на плоскости
Свойства и методы:

T2DPoint.x

Описание: Координата X
Тип: number

T2DPoint.y

Описание: Координата Y
Тип: number

TQuaternion

Описание: Кватернион поворота в трёхмерном пространстве
Свойства и методы:

TQuaternion.ImagPart

Описание: Вектор кватерниона
Тип: TVector3d

TQuaternion.RealPart

Описание: Скаляр кватерниона
Тип: number

TTransformation

Описание: Запись трансформации - вектора положения и кватерниона поворота
Свойства и методы:

TTransformation.Position

Описание: Вектор положения
Тип: TVector3d

TTransformation.Rotation

Описание: Кватернион поворота
Тип: TQuaternion

TVector2f

Описание: Точка (радиус-вектор) в двумерном пространстве
Свойства и методы:

TVector2f.x

Описание: Координата по оси X
Тип: number

TVector2f.y

Описание: Координата по оси Y
Тип: number

TVector3d

Описание: Точка (радиус-вектор) в трёхмерном пространстве
Свойства и методы:

TVector3d.x

Описание: Координата по оси X
Тип: number

TVector3d.y

Описание: Координата по оси Y
Тип: number

TVector3d.z

Описание: Координата по оси Z
Тип: number

Axis_X

Добавлено в версии 1
Описание: Направление по оси -X
Тип: TVector3d

Axis_Y

Добавлено в версии 1
Описание: Направление по оси -Y
Тип: TVector3d

Axis_Z

Добавлено в версии 1
Описание: Направление по оси -Z
Тип: TVector3d

AxisX

Добавлено в версии 1
Описание: Направление по оси X
Тип: TVector3d

AxisY

Добавлено в версии 1
Описание: Направление по оси Y
Тип: TVector3d

AxisZ

Добавлено в версии 1
Описание: Направление по оси Z
Тип: TVector3d

holes

Добавлено в версии 6
Описание: Список отверстий
Тип: TDrillHoleList | undefined

panel

Добавлено в версии 6
Описание: Панель
Тип: TFurnPanel | undefined

result

Добавлено в версии 6
Описание: Результат вычисления параметра
Тип: number

scriptApiVersion (устаревший функционал)

Объявлено устаревшим с версии 3. Используйте модуль apiVersion
Описание: Версия API
Тип: number

apiVersion

Добавлено в версии 2
Описание: Модуль версии API скриптов
Свойства и методы:

apiVersion.AwareAndThrowIfApiVersionIsLowestThan(requiredVersion)

Описание: Вывести сообщение ошибке и выбросить ошибку, если настоящая версия API меньше указанной

Параметры:

requiredVersion
Тип: number
Метод не возвращает результат

apiVersion.GetRealScriptApiVersion()

Описание: Получить настоящее значение версии API. Функция возвращает значение текущей версии API.
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

apiVersion.GetScriptApiVersion()

Описание: Получить текущее значение версии API. Функция возвращает значение текущей версии API, либо заданное пользователем значение версии API
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: number

apiVersion.SetScriptApiVersion(newVersion)

Описание: Установить новое значение версии API. Функция используется для добавления функционала, отсутствующего в текущей версии API

Параметры:

newVersion - Новое значение версии в диапазоне 0-<текущее значение версии>
Тип: number
Метод не возвращает результат

batchProcessing

Добавлено в версии 3
Описание: Модуль с функциями пакетной обработки элементов модели
Свойства и методы:

batchProcessing.ForEachButtInPanel(panel, func)

Добавлено в версии 3
Описание: Вызвать функцию для каждой облицовки кромки панели.

Параметры:

panel - Панель.
Тип: TFurnPanel
func - Функция обработки
Тип: (butt: TFurnButt)=>void
Метод не возвращает результат

batchProcessing.ForEachCutInPanel(panel, func)

Добавлено в версии 3
Описание: Вызвать функцию для каждого паза панели.

Параметры:

panel - Панель.
Тип: TFurnPanel
func - Функция обработки
Тип: (cut: TFurnCut)=>void
Метод не возвращает результат

batchProcessing.ForEachElementInList(list, func)

Добавлено в версии 3
Описание: Вызвать функцию для каждого элемента из списка двумерных элементов (двумерного контура)

Параметры:

list - Список двумерных элементов
Тип: T2DElemList
func - Функция обработки
Тип: (elem: T2DElement)=>void
Метод не возвращает результат

batchProcessing.ForEachHoleInFurniture(furn, func)

Добавлено в версии 3
Описание: Вызвать функцию для каждого отверстия фурнитуры

Параметры:

furn - Фурнитура
Тип: TFastener
func - Функция обработки
Тип: (hole: THole)=>void
Метод не возвращает результат

batchProcessing.ForEachObjectInList(list, func, recursive, objTypes)

Добавлено в версии 3
Описание: Вызвать функцию для объектов внутри структурного объекта. При рекурсивной обработке структурного объекта сначал обрабатываются вложенные объекты, потом сам структурный объект.

Параметры:

list - Структурный объект, содержимое которого обрабатывается
Тип: T3DObjectList
func - Функция обработки
Тип: (obj: TObject3D)=>void
[recursive] - Рекурсивная обработка. По умолчанию = true
Тип: boolean
[objTypes] - Список типов объектов, обрабатываемых функцией. Если не задан - функция вызывается для всех найденных объектов
Тип: Set<ObjectTypeValue>
Метод не возвращает результат

batchProcessing.ForEachPlasticInPanel(panel, func)

Добавлено в версии 3
Описание: Вызвать функцию для каждой облицовки пласти панели.

Параметры:

panel - Панель.
Тип: TFurnPanel
func - Функция обработки
Тип: (plastic: TFurnPlastic)=>void
Метод не возвращает результат

elasticTransformation

Добавлено в версии 1
Описание: Модуль для работы с эластичностью объектов
Свойства и методы:

elasticTransformation.GetObjectLocalSize(obj)

Добавлено в версии 1
Описание: Получить размер объекта. Возвращает значение GSize либо размер габаритной рамки эластичного структурного объекта

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: TVector3d

elasticTransformation.GetObjectMinLocalPoint(obj)

Добавлено в версии 1
Описание: Получить минимальную точку в ЛСК объекта. Возвращает значение GMin либо минимальные координаты габаритной рамки эластичного структурного объекта

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: TVector3d

elasticTransformation.LoadElasticParameters(list, createIfNotExist)

Добавлено в версии 3
Описание: Загрузить параметры эластичности из структурного объекта

Параметры:

list
Тип: T3DObjectList
[createIfNotExist] - Создать пустые параметры, если их нет. По умолчанию - false
Тип: boolean
Возвращаемый тип результата: ElasticParameters | undefined

elasticTransformation.ObjectIsElasticBlock(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект эластичным блоком

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

elasticTransformation.ResizeObject(obj, newSize)

Добавлено в версии 1
Описание: Изменить размер структурного объекта.

Параметры:

obj - Структурный объект.
Тип: T3DObjectList
newSize - Новый размер в ЛСК объекта.
Тип: TVector3d
Метод не возвращает результат

elasticTransformation.SaveElasticParameters(list, elasticParameters)

Добавлено в версии 3
Описание: Сохранить параметры эластичности в структурный объект

Параметры:

list
Тип: T3DObjectList
elasticParameters
Тип: ElasticParameters
Метод не возвращает результат

elasticTransformation.ElasticAxis

Добавлено в версии 3
Описание: Ось эластичной плоскости

Значения:

x
y
z

fastenerOperations

Добавлено в версии 1
Описание: Модуль операций с фурнитурой
Свойства и методы:

fastenerOperations.FindConnectedFasteners(obj1, obj2)

Добавлено в версии 1
Описание: Найти объекты фурнтуры, которые сверлятся во все заданные объекты.

Параметры:

obj1 - Объект 1
Тип: TObject3D
[obj2] - Объект 2 (необязательный)
Тип: TObject3D
Возвращаемый тип результата: TObject3D[]

fastenerOperations.NewHoleDrilling()

Добавлено в версии 1
Описание: Создать объект для сверления отверстий
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: THoleDrilling

fastenerOperations.datumMode

Добавлено в версии 1
Описание: Тип базирования фурнитуры

Значения:

box - По габаритному параллелепипеду (параметрическая секция)
face - По одной плоскости (ручка)
faceButt - По плоскости и торцу панели (шуруп, евровинт)
faceEdge - По плоскости и опорному ребру (двойная стяжка)
faceFace - По двум плоскостям (уголок, стяжка)
joint - На стык двух панелей (схема крепежа)
parallelFaces - По двум параллельным плоскостям

fastenerOperations.holeDrillMode

Добавлено в версии 1
Описание: Тип сверления отверстия

Значения:

auto - Автоматически.
blind - Глухое.
through - Сквозное.

fastenerOperations.paramFastType

Добавлено в версии 1
Описание: Тип параметров фурнитуры

Значения:

blindHole - Глухое отверстие
corner - Уголок
doubleMiniFix - Двойная стяжка
handleCab - Ручка-скоба
handleKnob - Ручка-кнопка
hinge - Петля
hinge180 - Петля 180 градусов
miniFix - Стяжка
pin - Шкант
scheme - Схема крепежа
screw - Шуруп, евровинт
shelfPin - Полкодержатель
throughHole - Сквозное отверстие

geometry2d

Добавлено в версии 1
Описание: Модуль для работы с двумерной геометрией
Свойства и методы:

geometry2d.BooleanOperation2D(contour1, contour2, boolFunction, result)

Добавлено в версии 1
Описание: Выполнить булеву операцию с двумя контурами

Параметры:

contour1 - Контур 1
Тип: T2DElemList
contour2 - Контур 2
Тип: T2DElemList
boolFunction - Тип булевой операции
Тип: booleanFunction2D
result - Контур для записи результата операции
Тип: T2DElemList
Возвращаемый тип результата: boolean

geometry2d.CompareElements(elem1, elem2)

Добавлено в версии 1
Описание: Сравнить два элемента конутра

Параметры:

elem1
Тип: T2DElement
elem2
Тип: T2DElement
Возвращаемый тип результата: boolean

geometry2d.ContourArea(contour)

Добавлено в версии 1
Описание: Получить площадь контура

Параметры:

contour
Тип: T2DElemList
Возвращаемый тип результата: number

geometry2d.ElementDistance(elem1, elem2)

Добавлено в версии 1
Описание: Найти расстояние между двумя элементами контура

Параметры:

elem1
Тип: T2DElement
elem2
Тип: T2DElement
Возвращаемый тип результата: number

geometry2d.GetIntersectionPoints(elem1, elem2)

Добавлено в версии 1
Описание: Получить точки пересечения двух двумерных элементов контура

Параметры:

elem1
Тип: T2DElement
elem2
Тип: T2DElement
Возвращаемый тип результата: T2DPoint[]

geometry2d.MakeEquidistant(source, destination, offset, mode)

Описание: Добавить эквидистанту контура в другой контур. Контур должен быть упорядочен. От направления контура зависит направление эквидистанты. Если контур упорядочен против часовой стрелки, то положительное значение отступа приведёт к построению внешней эквидистанты, а отрицательное - к внутренней. Если контур упорядочен по часовой стрелке - наоборот.

Параметры:

source - Исходный контур
Тип: T2DElemList
destination - Контур назначения
Тип: T2DElemList
offset - Отступ от исходного контура
Тип: number
mode - Алгоритм построения эквидистанты
Тип: equidistantMode
Метод не возвращает результат

geometry2d.MakeEquidistantRecursive(source, destination, offset, mode)

Описание: Добавить эквидистанту контура в другой контур с учётом вложенности контуров. Напраление эквидистанты не зависит от направления контура. Положительное значение отступа приведёт к построению внутренней эквидистанты, а отрицательное - к внешней.

Параметры:

source - Исходный контур
Тип: T2DElemList
destination - Контур назначения
Тип: T2DElemList
offset - Отступ от исходного контура
Тип: number
mode - Алгоритм построения эквидистанты
Тип: equidistantMode
Метод не возвращает результат

geometry2d.NewContour(size)

Добавлено в версии 1
Описание: Создать двумерный контур

Параметры:

[size] - Размер контура
Тип: T2DPoint
Возвращаемый тип результата: T2DElemList

geometry2d.NewTempContour(size)

Добавлено в версии 1
Описание: Создать временный двумерный контур, который будет удалён после завершения скрипта

Параметры:

[size] - Размер контура
Тип: T2DPoint
Возвращаемый тип результата: T2DElemList

geometry2d.VectorAdd(v1, v2)

Добавлено в версии 1
Описание: Сложить два вектора

Параметры:

v1
Тип: T2DPoint
v2
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

geometry2d.VectorDot(v1, v2)

Добавлено в версии 1
Описание: Скалярное произведение векторов

Параметры:

v1
Тип: T2DPoint
v2
Тип: T2DPoint
Возвращаемый тип результата: number

geometry2d.VectorEqual(v1, v2)

Добавлено в версии 3
Описание: Проверить равность векторов (с точностью 0.001)

Параметры:

v1
Тип: T2DPoint
v2
Тип: T2DPoint
Возвращаемый тип результата: boolean

geometry2d.VectorInvert(v)

Добавлено в версии 1
Описание: Инвертировать вектор (изменить его направление на противоположное)

Параметры:

v
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

geometry2d.VectorLength(v)

Добавлено в версии 1
Описание: Получить длину вектора

Параметры:

v
Тип: T2DPoint
Возвращаемый тип результата: number

geometry2d.VectorMake(x, y)

Добавлено в версии 1
Описание: Создать двумерную точку

Параметры:

x
Тип: number
y
Тип: number
Возвращаемый тип результата: T2DPoint

geometry2d.VectorMul(v, a)

Добавлено в версии 1
Описание: Умножить вектор на число

Параметры:

v - Вектор
Тип: T2DPoint
a - Число
Тип: number
Возвращаемый тип результата: T2DPoint

geometry2d.VectorNormalize(v)

Добавлено в версии 1
Описание: Нормализовать вектор. Функция возвращает сонаправленный вектор единичной длины для ненулевого вектора В противном случае, функция возвращает копию исходного вектора.

Параметры:

v
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

geometry2d.VectorRotate(v, angle, center)

Добавлено в версии 3
Описание: Повернуть вектор на заданный угол вокруг точки

Параметры:

v - Вектор
Тип: T2DPoint
angle - Угол в радианах
Тип: number
[center] - Центр вращения. Если не задан - точка (0, 0)
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

geometry2d.VectorsAreColinear(v1, v2)

Добавлено в версии 1
Описание: Проверить коллинеарность векторов

Параметры:

v1
Тип: T2DPoint
v2
Тип: T2DPoint
Возвращаемый тип результата: boolean

geometry2d.VectorSub(v1, v2)

Добавлено в версии 1
Описание: Вычесть вектор из вектора

Параметры:

v1 - Исходный вектор
Тип: T2DPoint
v2 - Вычитаемый вектор
Тип: T2DPoint
Возвращаемый тип результата: T2DPoint

geometry2d.booleanFunction2D

Добавлено в версии 1
Описание: Тип булевой операции с двумерными контурами

Значения:

intersection
subtraction
union

geometry2d.element2DType

Добавлено в версии 1
Описание: Тип 2D элемента

Значения:

arc - Дуга
circle - Окружность
line - Линия
list - Список 2D элементов

geometry2d.equidistantMode

Добавлено в версии 3
Описание: Алгоритм построения эквидистанты

Значения:

corner - Без скругления
rounding - Со скруглением

geometry3d

Добавлено в версии 1
Описание: Модуль для работы с трёхмерной геометрией
Свойства и методы:

geometry3d.ValueEqual(a, b)

Добавлено в версии 1
Описание: Проверить равность чисел (с точностью 0.001)

Параметры:

a
Тип: number
b
Тип: number
Возвращаемый тип результата: boolean

geometry3d.VectorAdd(v1, v2)

Добавлено в версии 1
Описание: Сложить два вектора

Параметры:

v1
Тип: TVector3d
v2
Тип: TVector3d
Возвращаемый тип результата: TVector3d

geometry3d.VectorCross(v1, v2)

Добавлено в версии 1
Описание: Векторное произведение векторов

Параметры:

v1
Тип: TVector3d
v2
Тип: TVector3d
Возвращаемый тип результата: TVector3d

geometry3d.VectorDot(v1, v2)

Добавлено в версии 1
Описание: Скалярное произведение векторов

Параметры:

v1
Тип: TVector3d
v2
Тип: TVector3d
Возвращаемый тип результата: number

geometry3d.VectorEqual(v1, v2)

Добавлено в версии 1
Описание: Проверить равность векторов (с точностью 0.001)

Параметры:

v1
Тип: TVector3d
v2
Тип: TVector3d
Возвращаемый тип результата: boolean

geometry3d.VectorInvert(v)

Добавлено в версии 1
Описание: Инвертировать вектор (изменить его направление на противоположное)

Параметры:

v
Тип: TVector3d
Возвращаемый тип результата: TVector3d

geometry3d.VectorIsEmpty(v)

Добавлено в версии 1
Описание: Проверить, является ли вектор пустым (нулевым)

Параметры:

v
Тип: TVector3d
Возвращаемый тип результата: boolean

geometry3d.VectorLength(v)

Добавлено в версии 1
Описание: Получить длину вектора

Параметры:

v
Тип: TVector3d
Возвращаемый тип результата: number

geometry3d.VectorMake(x, y, z)

Добавлено в версии 1
Описание: Создать вектор

Параметры:

x
Тип: number
y
Тип: number
z
Тип: number
Возвращаемый тип результата: TVector3d

geometry3d.VectorMul(v, a)

Добавлено в версии 1
Описание: Умножить вектор на число

Параметры:

v - Вектор
Тип: TVector3d
a - Число
Тип: number
Возвращаемый тип результата: TVector3d

geometry3d.VectorNormalize(v)

Добавлено в версии 1
Описание: Нормализовать вектор. Функция возвращает сонаправленный вектор единичной длины для ненулевого вектора В противном случае, функция возвращает копию исходного вектора.

Параметры:

v
Тип: TVector3d
Возвращаемый тип результата: TVector3d

geometry3d.VectorsAreColinear(v1, v2)

Добавлено в версии 1
Описание: Проверить коллинеарность векторов

Параметры:

v1
Тип: TVector3d
v2
Тип: TVector3d
Возвращаемый тип результата: boolean

geometry3d.VectorSub(v1, v2)

Добавлено в версии 1
Описание: Вычесть вектор из вектора

Параметры:

v1 - Исходный вектор
Тип: TVector3d
v2 - Вычитаемый вектор
Тип: TVector3d
Возвращаемый тип результата: TVector3d

materialData

Добавлено в версии 1
Описание: Модуль для работы с параметрами материалов
Свойства и методы:

materialData.ExtractMaterialCode(fullMaterialName)

Добавлено в версии 1
Описание: Извлечь артикул материала из полного имени материала

Параметры:

fullMaterialName - Полное имя материала
Тип: string
Возвращаемый тип результата: string

materialData.ExtractMaterialName(fullMaterialName)

Добавлено в версии 1
Описание: Извлечь наименование материала из полного имени материала

Параметры:

fullMaterialName - Полное имя материала
Тип: string
Возвращаемый тип результата: string

materialData.FormatMaterialName(fullMaterialName)

Добавлено в версии 1
Описание: Форматировать полное имя материала в виде "<Наименование> (Артикул <Артикул>)"

Параметры:

fullMaterialName - Полное имя материала
Тип: string
Возвращаемый тип результата: string

objectData

Добавлено в версии 3
Описание: Модуль для работы с данными объектов
Свойства и методы:

objectData.AddObjectAdditionalMaterials(obj, materials)

Добавлено в версии 3
Описание: Добавить список дополнительных материалов объекта. При совпадении наименования и артикула у нового и текущего дополнительных материалов у текущего дополнительного материала будет изменено количество

Параметры:

obj
Тип: TObject3D
materials
Тип: ObjectAdditionalMaterial[]
Метод не возвращает результат

objectData.AddObjectUserProperties(obj, properties)

Добавлено в версии 3
Описание: Добавить список пользовательских свойств объекта в виде коллекции "ключ-значение", где ключ - имя свойства, а значение - значение свойства. Ранее заданные пользовательские свойства объекта будут заменены при совпадении имён

Параметры:

obj
Тип: TObject3D
properties
Тип: Map<string, string | number>
Метод не возвращает результат

objectData.GetObjectAdditionalMaterials(obj)

Добавлено в версии 3
Описание: Получить список дополнительных материалов объекта

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: ObjectAdditionalMaterial[]

objectData.GetObjectNotes(obj)

Добавлено в версии 3
Описание: Получить заметки объекта

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: string

objectData.GetObjectUserProperties(obj)

Добавлено в версии 3
Описание: Получить список пользовательских свойств объекта в виде коллекции "ключ-значение", где ключ - имя свойства, а значение - значение свойства.

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: Map<string, string | number>

objectData.SetObjectAdditionalMaterials(obj, materials)

Добавлено в версии 3
Описание: Задать список дополнительных материалов объекта. Текущие дополнительные материалы объекта будут удалены

Параметры:

obj
Тип: TObject3D
materials
Тип: ObjectAdditionalMaterial[]
Метод не возвращает результат

objectData.SetObjectNotes(obj, notes)

Добавлено в версии 3
Описание: Задать заметки объекту

Параметры:

obj
Тип: TObject3D
notes
Тип: string
Метод не возвращает результат

objectData.SetObjectUserProperties(obj, properties)

Добавлено в версии 3
Описание: Задать список пользовательских свойств объекта в виде коллекции "ключ-значение", где ключ - имя свойства, а значение - значение свойства. Ранее заданные пользовательские свойства объекта будут удалены

Параметры:

obj
Тип: TObject3D
properties
Тип: Map<string, string | number>
Метод не возвращает результат

objectData.salonType

Добавлено в версии 5
Описание: Тип элемента для салона

Значения:

box - Ящик
doorFlap - Дверь откидная
doorLeft - Дверь левая
doorLift - Дверь подъёмная
doorRight - Дверь правая
doorSlideLeft - Дверь купе левая
doorSlideRight - Дверь купе правая
facade - Фасад
handle - Ручка
none - Отсутствует
support - Опора

objectTypeChecker

Добавлено в версии 1
Описание: Модуль для проверки типов 3D объектов
Свойства и методы:

objectTypeChecker.ObjectIsAnyTypeOf(obj, types)

Добавлено в версии 1
Описание: Проверить соответствие объекта одному из типов

Параметры:

obj
Тип: TObject3D
types
Тип: ObjectTypeValue[] | Set<ObjectTypeValue>
Метод не возвращает результат

objectTypeChecker.ObjectIsBlock(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект блоком

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsContour3D(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект контуром на плоскости

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsCustomGroove(obj)

Добавлено в версии 5
Описание: Проверить является ли объект многофункциональным вырезом

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsDraftBlock(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект полуфабрикатом

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsExtrusionBody(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект телом выдавливания

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsFastener(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект фурнитурой

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsFurnAsm(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект покупным изделием

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsImportedMesh(obj)

Добавлено в версии 5
Описание: Проверить, является ли объект импортированным полигональным объектом

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsLayer(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект слоем

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsLimits(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект габаритной рамкой

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsPanel(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект панелью

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsRotationBody(obj)

Добавлено в версии 3
Описание: Проверить, является ли объект телом вращения

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsSize3D(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект объектом-размером

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsStructObject(obj)

Добавлено в версии 5
Описание: Проверить, является ли объект структурным (имеет вложенные объекты)

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectIsTrajectoryBody(obj)

Добавлено в версии 1
Описание: Проверить, является ли объект телом по траектории

Параметры:

obj
Тип: TObject3D
Возвращаемый тип результата: boolean

objectTypeChecker.ObjectTypeValue

Добавлено в версии 1
Описание: Тип 3D объекта

Значения:

contour - Контур на плоскости
draftBlock - Полуфабрикат
extrusion - Профиль (тело выдваливания)
fastener - Фурнитура
furnAsm - Покупное изделие
furnBlock - Блок
importedMesh - Импортированный полигональный объект
layer - Слой
limits - Габаритная рамка
panel - Панель
rotationBody - Тело вращения
size - Размер
structObject - Структурный объект (содержит вложенные объекты)
trajectoryBody - Тело по траектории

panelOperations

Добавлено в версии 1
Описание: Модуль для проведения операций с панелями
Свойства и методы:

panelOperations.AddButt(panel, elemIndex, materialData)

Добавлено в версии 1
Описание: Добавить облицовку кромки на панель.

Параметры:

panel - Панель
Тип: TFurnPanel
elemIndex - Индекс элемента контура панели
Тип: number
[materialData] - Параметры материала кромки. По умолчанию - параметры активного материала кромки.
Тип: ButtMaterialData
Возвращаемый тип результата: TFurnButt

panelOperations.AddCut(panel, type, name, sign)

Добавлено в версии 2
Описание: Добавить паз на панель.

Параметры:

panel - Панель
Тип: TFurnPanel
type - Тип паза
Тип: cutType
name - Наименование паза
Тип: string
[sign] - Обозначение паза
Тип: string
Возвращаемый тип результата: TFurnCut

panelOperations.AddPlastic(panel, frontSide, materialData)

Добавлено в версии 1
Описание: Добавить облицовку пласти на панель.

Параметры:

panel - Панель
Тип: TFurnPanel
[frontSide] - Флаг - нанести на переднюю пласть панели. По умолчанию - на заднюю пласть панели.
Тип: boolean
[materialData] - Параметры материала. По умолчанию - параметры активного материала.
Тип: FurnMaterialData
Возвращаемый тип результата: TFurnPlastic

panelOperations.ApplyCustomGrooves(grooves, options)

Добавлено в версии 5
Описание: Применить многофункциональные вырезы к объектам модели

Параметры:

grooves - Вырез, либо массив вырезов
Тип: TCustomGroove | TCustomGroove[]
[options] - Параметры применения вырезов.
Тип: GroovingOptions
Метод не возвращает результат

panelOperations.cutParamType

Добавлено в версии 1
Описание: Тип параметров паза

Значения:

pocket - Выемка
type1 - Тип 1
type2 - Тип 2
type3 - Тип 3
type4 - Тип 4
type5 - Тип 5
type6 - Тип 6
type7 - Тип 7
type8 - Тип 8
type9 - Тип 9

panelOperations.cutType

Добавлено в версии 1
Описание: Тип паза

Значения:

extrusion - Выемка (перпендикулярно плоскости контура панели)
freeForm - По произвольной траектории на плоскости контура панели

panelOperations.faceType

Добавлено в версии 1
Описание: Тип лицевой стороны

Значения:

back - Задняя
default - Не задана
front - Передняя

panelOperations.textureOrientation

Добавлено в версии 1
Описание: Тип ориентации текстуры

Значения:

custom - Произвольная
horizontal - Горизонтальная
none - По умолчанию
vertical - Вертикальная

GetObjects()

Добавлено в версии 6
Описание: Получить список объектов
Метод не принимает дополнительных параметров.
Возвращаемый тип результата: EstimateObject[]

GetParam(paramName)

Добавлено в версии 6
Описание: Получить значение параметра

Параметры:

paramName - Наименование параметра
Тип: string
Возвращаемый тип результата: number

TMatrix4

Описание: Матрица преобразования в трёхмерном пространстве
Является масиивом значений типа number

Cправка по типам объектов

Система типов языка JavaScript имеет ряд ограничений, не позволяющих объяснить преобразование объектов внутри движка скриптов в рамках языка JavaScript, поэтому вводятся дополнительные абстракции - интерфейсы, абстрактные классы и перечисляемые типы.

Интерфейсы

Интерфейсы в системе Базис - это виртуальный (не имеющий реализации в коде) тип, описывающий свойства объекта. Объект считается реализацией интерфейса, если имеет все свойства, описанные в интерфейсе. Например, объект, реализующий интерфейс TVector3d может быть создан как специальной функцией, так и вручную с назначением всех свойств реализуемого интерфейса:

// Создание вектора с помощью специальной функции
let v1 = geometry3d.VectorMake(1, 0, 0);
// Создание вектора вручную
let v2 = {
    x: 1,
    y: 0,
    z: 0
}

Оба созданных в примере выше объекта могут быть использованы и как параметры методов функций системы Базис и как значения свойств объектов системы Базис.
В большинстве случаев интерфейсы используются для передачи через движок скриптов тех объектов, которые не могут быть переданы по ссылке. Поэтому движок оперирует копиями объектов - при передаче интерфейса во внутреннюю функцию системы Базис движок скриптов считывает значения всех свойств объекта, реализующего интерфейс и создаёт объект системы Базис, который идёт как аргумент в вызываемую функцию. В обратную сторону конвертация схожа - при возвращении свойством/методом объекта (не ссылки на объект) движок скриптов преобразует объект системы Базис в объект JavaScript, которому назначает значения свойств оригинального объекта.
Важная заметка: из-за копирования объектов движком скриптов изменения интерфейса, полученного из свойства/метода объектов системы Базис не отразятся на исходном значении внутри объекта, например:

// Создаём панель
let panel = objects3d.NewPanel(100, 100);
// Создаём вектор будущего положения панели
let pos = geometry3d.VectorMake(100, 200, 300);
// Задаём положение панели
panel.Position = pos;
// Считываем положение панели 
let pos2 = panel.Position;
// Меняем координату X первого вектора
pos.x = 400;
// Меняем координату Y второго вектора
pos2.y = 500;
// Считываем настоящее положение панели
let realPos = panel.Position;
// Выводим значения переменных
// Как видно из вывода лога, все три переменных ссылаются на разные объекты
// и изменения переменных не отражаются на значении свойства Position
// панели еслине задать значение свойства напрямую
console.log(JSON.stringify(pos)); // {"x":400,"y":200,"z":300}
console.log(JSON.stringify(pos2)); // {"x":100,"y":500,"z":300}
console.log(JSON.stringify(realPos)); // {"x":100,"y":200,"z":300}

Абстрактные классы

Абстрактные классы - абстракция для описания классов системы Базис. Эти классы описаны в глобальном пространстве для упрощения поиска определений, но фактическое их положение иное. Поэтому, их конструкторы не могут быть вызваны из глобального пространства, для создания экземпляра класса используются встроенные функции внутренних модулей, например:

// Создание объекта панели с помощью специальной функции
let panel = objects3d.NewPanel(100, 100);

Большинство объектов, с которыми происходит взаимодействие в системе Базис, в пространстве JavaScript описываются как экземпляры абстрактных классов.

Перечисляемые типы

Перечисляемые типы (enums) предоставляют конечный набор именованных значений. В JavaScript они реализованы как обычные объекты с набором свойств, например:

// Тип, задающий направление - вверх, вниз, влево, вправо
const direction = {
    up: 0,
    down: 1,
    left: 2,
    right: 3
}

Перечисляемые типы в основном используются как группа констант, элемент которой передаётся в качестве параметра метода либо значения свойства. Как и обычные константы, это удобно тем, что при изменении реального значения (например, значение было равно 0, потом стало равно 5) параметра в методе и в перечисляемом типе скрипт продолжит корректно работать с новым значением, если оно задано с помощью константы перечисляемого типа.

Специальные типы: ReferenceObject и IndexedProperty

Тип ReferenceObject

ReferenceObject - специальный тип, используемый для передачи значений, которые могут изменяться внутри вызываемого метода. Конструкция языка JavaScript не реализует изменение значения переданной переменной внутри метода, поэтому при передаче параметров функции через движок скриптов нет возможности ни изменить значение переменной JavaScript в методе системы Базис ни наоборот - изменить значение переменной системы Базис в методе Javascript. Для передачи таких параметров используется тип ReferenceObject - объект со свойством value, значение которого будет перезаписываться.

Пример создания объекта ReferenceObject для передачи в качестве изменяемых параметров

Как описано выше, вызываемый метод не может переопределить значение переменной, переданной в него. Например код ниже не позволит получить ближайший элемент контура к точке и расстояние до неё:

// Создадим панель
let panel = objects3d.NewPanel(100, 200);
// Точка для поиска ближайшего элемента контура
let point = {
    x: 50,
    y: -20
}
// Максимальное расстояние поиска (максимальное расстояние до точки)
let distance = 100;
// Найденный элемент
let elem;
let result = panel.Contour.FindNearestObject(point, distance, elem);
if (result) { // result == true, поэтому выполнение продолжится в этом блоке кода
    console.log('Элемент найден');
    console.log(`Расстояне от точки до элемента: ${distance}`);
    if (elem) { // elem не определён, поэтому выполнение продолжится по ветке else
        if (elem.IsLine()) {
            console.log(`Pos1: ${JSON.stringify(elem.AsLine().Pos1)}`)
            console.log(`Pos2: ${JSON.stringify(elem.AsLine().Pos2)}`)
        }
    }
    else
        console.log('Элемент не был возвращён методом') // В лог будет выведено это сообщение
}
else
    console.log("Элемент не найден");

Для получения изменённого значения как раз и создан тип ReferenceObject, который будет передаваться в метод системы Базис, а после выполнения метода движок скриптов перепишет значение свойства value переданного объекта ReferenceObject.

// Создадим панель
let panel = objects3d.NewPanel(100, 200);
// Точка для поиска ближайшего элемента контура
let point = {
    x: 50,
    y: -20
}
// Максимальное расстояние поиска (максимальное расстояние до точки)
let distance = 100;
// Найденный элемент
let elem;
// Создадим объекты ReferenceObject, хранящие значения расстояния и найденного элемента
let distanceRef = new ReferenceObject(distance);
let elemRef = new ReferenceObject(elem);
let result = panel.Contour.FindNearestObject(point, distanceRef, elemRef);
// Перезаписываем новые значения расстояния и найденного элемента
distance = distanceRef.value;
elem = elemRef.value;
if (result) {// result == true, поэтому выполнение продолжится в этом блоке кода
    console.log('Элемент найден');
    console.log(`Расстояне от точки до элемента: ${distance}`);
    if (elem) {// elem определён, поэтому продолжается выполнение этого блока кода
        if (elem.IsLine()) {// elem является линией, поэтому продолжается выполнение этого блока кода
            console.log(`Pos1: ${JSON.stringify(elem.AsLine().Pos1)}`)
            console.log(`Pos2: ${JSON.stringify(elem.AsLine().Pos2)}`)
        }
    }
    else
        console.log('Элемент не был возвращён методом')
}
else
    console.log("Элемент не найден");

Пример изменения значения объекта ReferenceObject для передачи изменённого значения в систему Базис

В некоторых случаях (в основном, в функциях обратного вызова) бывает необходимо изменить значение, переданное из системы Базис, которое нельзя вернуть как результат функции. В таких случаях движок может создать объект типа ReferenceObject и передать его в качестве нужного параметра в вызываемую функцию JavaScript; после завершения функции значение такого объекта будет преобразовано движком и назначено в нужную область памяти для корректного изменения значения, переданного по ссылке. В качестве примера рассмотрим фильтрацию ввода в поле ввода текстового компонента:

//Функция-фильтр вводимых символов
function FilterLetterCharacters(sender, key) {
    // Получение строки из кода символа
    let keyString = String.fromCharCode(key.value);
    // Регулярное выражение, соответствующее любой цифре либо точке
    let regex = /\d|\./;
    // Если строка не соответствует регулярному выражению, обнуляем введённый символ.
    // Таким образом, после выполнения этой функции дальнейшая обработка будет для 
    // символа с нулевым значением и изначальный символ не будет введён в поле компонента
    if (!keyString.match(regex))
        key.value = 0;
}

var UserForm1 = UI.components.NewForm();
UserForm1.Width = 400;
UserForm1.Height = 300;
UserForm1.Caption = 'UserForm1';
UserForm1.Show();

var cxTextEdit1 = UI.components.NewTextEdit(UserForm1, UserForm1);
cxTextEdit1.Width = 121;
cxTextEdit1.Top = 55;
cxTextEdit1.Left = 75;
cxTextEdit1.Height = 23;
// Назначаем функцию-фильтр на событие ввода символа
cxTextEdit1.OnKeyPress = FilterLetterCharacters;

Тип IndexedProperty

Тип IndexedProperty - абстрактный тип, введённый для имитации объекта со свойствами, доступными по индексу из-за различий JavaScript и системы Базис. Технически, со стороны системы Базис доступ к значению индексного свойства идет одной операцией (имя свойства + индекс свойства), а со стороны Javascript - двумя, доступ к свойству по имени и доступ к свойству полученного значения по индексу. Потому был описан отдельный тип объекта, возвращаемый движком при доступе к индексному свойству объекта, который хранит в себе необходимые данные для дальнейшего доступа по индексу.