Eulergraph
    Preparing search index...

    Базовый класс, от которого все наследуются.

    Стабильный ID типа для сериализации (className в JSON) и ключа в elementsLibstatic readonly typeName. Не зависит от минификации. Объявляйте на каждом конкретном cell-классе; на GraphicElement значение не задаётся. При наследовании обязательно переопределите — иначе assertCellTypeName выбросит ошибку. См. ../../guide/typeName и сериализация cell-классов.md.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _activeLabelIndex: number = 0
    _angle: number = 0

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

    _height: number = 1

    Высота

    _isBlocked: boolean = false
    _isPrintable: boolean = true
    _isVisible: boolean = true
    _magnetPoints: Point[] = []
    _parent: string | null = null

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

    _position: Point = ...

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

    _radius: number = 0
    _type: LinkType = LinkType.LINE

    Тип линии

    _width: number = 100

    Ширина

    allowAddTextLabel: boolean = true

    разрешаем добавление новых label по dblclick.

    angleRad: number = 0

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

    arrowSource: ConnectorArrow | null = null

    Стрелка в начале коннектора

    arrowTarget: ConnectorArrow | null = null

    Стрелка в конце коннектора

    bbox: Rect = ...
    bezierParams: BezierParams = []
    children: GraphicElement[] = []

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

    cursorName: string = "DRAG_CELL_SVG"

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

    cursorTrasform: string = "translate(-50%, -50%) "

    Смещение кастомного курсора

    customAttrs: CustomAttrs = ...

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

    dragFantomPosition: Point | null = null

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

    drawingScale: number = 1

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

    drawPaths: DrawPath[] = []
    firstPoint: Point = ...

    Начальная точка

    firstPointFixed: boolean = false
    firstPointLocal: Point = ...
    id: string

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

    isCell: boolean = true
    isTextEditable: boolean = true

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

    lastPoint: Point = ...

    Конечная точка

    lastPointFixed: boolean = false
    lastPointLocal: Point = ...
    libName: string | null = null

    Имя библиотеки, которая породила этот элемент.

    lineColor: string = "#000000"

    Цвет линии

    magnetPointsPath: Path2D = ...
    margins: TextMargins = ...
    name: string = "Graphic Element"

    Имя. Отображается пользователю

    points: Point[] = []

    Точки, по которым строится линия

    relativeTextPosition: RelativeTextPosition = ...

    Относительное положение текстового поля

    scene: Scene2D | null = null

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

    standardCursor: CursorStandard = "none"

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

    strokeWidth: number = 1

    Толщина линии

    testBboxStyle: TestBboxStyle
    textLabels: LinkTextLabel[] = []
    transform: DOMMatrix = ...
    txtHeight: number = 0
    txtWidth: number = 0
    userData: UserData = []

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

    withBbox: boolean = false
    zIndex: number = 0
    typeName: string = "Link"

    Стабильный ID типа для сериализации (className в JSON) и ключа в elementsLib. Не зависит от минификации. При наследовании обязательно переопределите — иначе assertCellTypeName выбросит ошибку при регистрации.

    Accessors

    • get absoluteTextPosition(): Point | null

      Returns Point | null

    • set absoluteTextPosition(value: Point | null): void

      Parameters

      Returns void

    • get angle(): number

      Returns number

    • get height(): number

      Returns number

    • get isBlocked(): boolean

      Returns boolean

    • set isBlocked(isBlocked: boolean): void

      Parameters

      • isBlocked: boolean

      Returns void

    • get isBlockedInRender(): boolean

      Returns boolean

    • get isPrintable(): boolean

      Returns boolean

    • set isPrintable(isPrintable: boolean): void

      Parameters

      • isPrintable: boolean

      Returns void

    • get isVisible(): boolean

      Returns boolean

    • set isVisible(visible: boolean): void

      Parameters

      • visible: boolean

      Returns void

    • get lib(): Library<typeof BaseCell | typeof BaseLinear> | null

      Возвращает библиотеку, которая породила этот элемент. Для этого у элемента должен быть задан libName, элемент должен быть в сцене и подключен сервис Stencil

      Returns Library<typeof BaseCell | typeof BaseLinear> | null

    • get magnetPoints(): Point[]

      Returns Point[]

    • set magnetPoints(magnetPoints: Point[]): void

      Parameters

      Returns void

    • get position(): Point

      Returns Point

    • get radius(): number

      Returns number

    • set radius(radius: number): void

      Parameters

      • radius: number

      Returns void

    • get textBbox(): Rect | null

      Returns Rect | null

    • set textBbox(value: Rect | null): void

      Parameters

      Returns void

    • get textLabel(): Label | null

      Returns Label | null

    • set textLabel(label: Label | null): void

      Parameters

      Returns void

    • get textPosition(): Point | null

      Returns Point | null

    • set textPosition(value: Point | null): void

      Parameters

      Returns void

    • get textTransform(): DOMMatrix

      Returns DOMMatrix

    • set textTransform(value: DOMMatrix): void

      Parameters

      • value: DOMMatrix

      Returns void

    • get type(): LinkType

      Returns LinkType

    • set type(type: LinkType): void

      Parameters

      Returns void

    • get visibleInRender(): boolean

      Returns boolean

    • get width(): number

      Returns number

    Methods

    • Parameters

      Returns number

    • Parameters

      • OptionalcustomPoints: Point[]

      Returns Point

    • Попадает ли точка в фигуру.

      Если accurately = false то будет найдено пересечение с повернутым bbox

      Parameters

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

      Returns boolean

    • Returns void

    • Parameters

      • ctx: CanvasRenderingContext2D

      Returns void

    • Parameters

      • ctx: CanvasRenderingContext2D

      Returns void

    • Parameters

      • json: Record<string, unknown>

      Returns Link

    • Parameters

      • index: number

      Returns Rect | null

    • Parameters

      • ctx: CanvasRenderingContext2D
      • Optionalindex: number

      Returns void

    • Returns string

    • Returns void

    • Parameters

      Returns number

    • Parameters

      • Optionalindex: number

      Returns DOMMatrix

    • Parameters

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

      Returns void

    • Parameters

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

      Returns boolean

    • Parameters

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

      Returns void

    • Parameters

      • ctx: CanvasRenderingContext2D
      • zoom: number

      Returns void

    • Parameters

      • _evt: {
            canvasPosition: { x: number; y: number };
            clickPoint: Point | { x: number; y: number };
            x: number;
            y: number;
        }
      • _args: unknown

      Returns void

    • Parameters

      • _evt: {
            canvasPosition: { x: number; y: number };
            isCtrl: boolean;
            isOutside: boolean;
            x: number;
            y: number;
        }
      • draggingControl: Control
      • OptionalsnapPoint: CellIntersection | null

      Returns void

    • Parameters

      • index: number

      Returns void

    • Parameters

      • ctx: CanvasRenderingContext2D

      Returns void

    • Returns void

    • Parameters

      Returns void

    • Parameters

      Returns void

    • Parameters

      Returns void

    • Parameters

      • text: string

      Returns void

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

      Returns LinkJSON

    • Parameters

      • deep: boolean = true

      Returns void

    • Returns void

    • Returns void

    • Returns void