Class TriangleShape

Hierarchy (view full)

Constructors

Properties

_drawRules: Record<string, (() => DrawCommand)> = ...
_paramData: ParamData[] = []
angleRad: number = 0

угол в радианах

annotatedText: AnnotatedText[] = []
bbox: Rect = ...
bboxEdges: BboxEdges = ...
cashCanvas: null | OffscreenCanvas = null
children: (BaseCell | Link)[] = []

Дочерние ячейки. Если массив не пуст, значит ячейка является группой

connectionPoints: null | ConnectionPoints = null
cornerPoints: Point[] = []

Угловые точки от левого нижнего угла по часовой стрелке, с учетом поворота, в глобальных координатах

cursorName: string = "DRAG_CELL_SVG"

Название курсора, который задан в cursorCollection, который будет показываться при наведении на фигуру. Если пустая строка, будет показан станадартный, указанный в cursorName, если задан, standardCursor нужно выставить 'none'

customAttrs: CustomAttrs = ...

Предназначен для расширения нужными аттрибутами

customRender: null | ((ctx: CanvasRenderingContext2D, zoom: number) => void) = null

Выполняется после основного рендера ячейки в её координатах

CanvasRenderingContext2D

number

dragFantomPosition: null | Point = null

Применяется при драге с привязкой. Сначала изменяется это значение, и если выполняется условие привязки - меняется положение ячейки

drawingScale: number = 1

Масштаб чертежа

drawPaths: DrawPath[] = []
effectCanvas: null | OffscreenCanvas = null
foreign?: null | Foreign = null

Пока не используется

id: string

Уникальный идентификатор

isCell: boolean = true
isClosed: boolean = false
isConnectedLine: boolean = false
isConnector: boolean = false
isContainer: boolean = false
isTextEditable: boolean = true

фигура с таким флагом будет редактироваться в TextEditor

links: (Link | LineParametric)[] = []

Коннекторы, которые подходят в ячейке

margins: TextMargins = ...
name: string = ""

Имя фигуры. Отображается пользователю

parent: null | BaseCell = null

Родительская ячейка. Может быть только одна. Наличие его означает, что элемент в группе

position: Point = ...

Позиция всегда верхний левый угол

prevZoom: null | number = null
realCellSize: null | {
    height: number;
    offset: Point;
    width: number;
} = null

сейчас никак не рассчитывается

relativeTextPosition: RelativeTextPosition = ...
rotatedBboxEdges: BboxEdges = ...
scale: PointLike = ...

Скейл по оси x и по оси y

scene: null | Scene2D = null

Сцена, которой принадлежит

shapeGhost: null | OffscreenCanvas = null
shapeType = "path"
standardCursor: CursorStandard = "none"

Стандартный курсор, который будет показываться при наведении на фигуру. Если задан cursorName, то нужно выставить в 'none'

startHeight: number

Высота, которая была изначально до определения реальной высоты

startWidth: number

Ширина, которая была изначально до определения реальной ширины

testBboxStyle: TestBboxStyle

Стиль текстового поля

textBbox: null | Rect = null
textPosition: null | Point = null
textTransform: DOMMatrix = ...
transform: DOMMatrix = ...
txtHeight: number = 0
txtWidth: number = 0
userData: UserData = []

Для любых данных пользователя

withBbox: boolean = false

Для рендера с обрамляющим прямоугольником

zIndex: number = 0
prefixed: string | boolean

Accessors

  • get angle(): number
  • Returns number

  • set angle(angle): void
  • Parameters

    • angle: number

    Returns void

  • get center(): Point
  • центр bbox в абсолютных координатах

    Returns Point

  • get drawCommands(): CellPaths[]
  • Returns CellPaths[]

  • set drawCommands(drawCommands): void
  • setter

    Необходимо присваивать новый массив, а не мутировать старый, тогда пути рисования обновятся

    Parameters

    Returns void

  • get height(): number
  • Высота ячейки в пойнтах (ед измерения отрисовки)

    Returns number

  • set height(newHeight): void
  • Устанавливает высоту ячейки в пойнтах (ед измерения отрисовки) и пересчитывает bbox и трансформации

    Parameters

    • newHeight: number

    Returns void

  • get heightMM(): number
  • Значение высоты в мм

    Returns number

  • set heightMM(height): void
  • Значение высоты в мм

    Parameters

    • height: number

    Returns void

  • get isBlocked(): boolean
  • Returns boolean

  • set isBlocked(isBlocked): void
  • Parameters

    • isBlocked: boolean

    Returns void

  • get isBlockedInRender(): boolean
  • Returns boolean

  • get isPrintable(): boolean
  • Returns boolean

  • set isPrintable(isPrintable): void
  • Parameters

    • isPrintable: boolean

    Returns void

  • get isVisible(): boolean
  • Returns boolean

  • set isVisible(visible): void
  • Parameters

    • visible: boolean

    Returns void

  • get magnetPoints(): Point[]
  • Returns Point[]

  • set magnetPoints(magnetPoints): void
  • Parameters

    Returns void

  • get paramData(): ParamData[]
  • Returns ParamData[]

  • get positionMM(): Point
  • get Позиция в мм

    Returns Point

  • set positionMM(position): void
  • set Переводит введённое значение положения из мм в пойнты

    Parameters

    Returns void

  • get startSize(): {
        height: number;
        width: number;
    }
  • Returns {
        height: number;
        width: number;
    }

    • height: number
    • width: number
  • get textLabel(): null | Label
  • Returns null | Label

  • set textLabel(label): void
  • Parameters

    Returns void

  • get visibleInRender(): boolean
  • Returns boolean

  • get width(): number
  • Ширина ячейки в пойнтах (ед измерения отрисовки)

    Returns number

  • set width(newWidth): void
  • Устанавливает ширину ячейки в пойнтах (ед измерения отрисовки) и пересчитывает bbox и трансформации

    Parameters

    • newWidth: number

    Returns void

  • get widthMM(): number
  • Значение ширины в мм

    Returns number

  • set widthMM(width): void
  • Значение ширины в мм

    Parameters

    • width: number

    Returns void

Methods

  • Returns void

  • Parameters

    • ctx: CanvasRenderingContext2D

    Returns void

  • Parameters

    • ctx: CanvasRenderingContext2D

    Returns void

  • Parameters

    • ctx: CanvasRenderingContext2D

    Returns void

  • Calls each of the listeners registered for a given event.

    Type Parameters

    Parameters

    Returns boolean

  • Parameters

    • Optional_drawingScale: number

    Returns void

    Ищет крайние точки на фигуре по восьми направлениям от центра: к центрам сторон bbox и к углам. Сработает только один раз. Если нужно пересчитывать при изменении скейла элемента, нужна убрать проверку. На больших элементах работает медленно. если элемент очень большой надо уменьшать

  • Parameters

    • ctx: CanvasRenderingContext2D

    Returns void

  • Returns string

  • Parameters

    • point: PointLike
    • ctx: CanvasRenderingContext2D
    • drawingScale: number

    Returns boolean

  • Return the number of listeners listening to a given event.

    Parameters

    Returns number

  • Parameters

    Returns void

  • Parameters

    • deltaX: number
    • deltaY: number
    • update: boolean = true

    Returns void

  • Remove all listeners, or those of the specified event.

    Parameters

    • Optionalevent: keyof BaseCellEvents

    Returns this

  • Parameters

    • ctx: CanvasRenderingContext2D
    • zoom: number
    • Optionaloptions: RenderOptions

    Returns void

  • Parameters

    Returns void

  • Parameters

    • angle: number

      угол в градусах

    Returns void

  • Parameters

    • x: number
    • y: number

    Returns void

  • Parameters

    • text: string

    Returns void

  • При добавлении нового поля, если хотите, чтобы оно сохранялось, нужно добавить его в CELL_SAVE_FIELDS

    Returns CellJSON & {
        _paramData?: ParamData[];
    }

  • Parameters

    • deep: boolean = true

    Returns void

  • обновляет реальные размеры с учетом толщин линий и перерисовывает упрощенное отображение для быстрого рендера

    Returns void

  • Returns void