UNPKG

@inweb/markup

Version:
120 lines (103 loc) 3.17 kB
/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a // license agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. /////////////////////////////////////////////////////////////////////////////// import { IMarkupObject } from "./IMarkupObject"; import { IMarkupColorable } from "./IMarkupColorable"; /** * 2D markup Rectangle object interface. */ export interface IMarkupRectangle extends IMarkupObject, IMarkupColorable { /** * Returns the screen coordinates of the top-left point (position) of the rectangle. */ getPosition(): { x: number; y: number }; /** * Sets the screen coordinates of the top-left point (position) of the rectangle. */ setPosition(x: number, y: number): void; /** * Returns the width of the rectangle. */ getWidth(): number; /** * Sets the width of the rectangle. */ setWidth(w: number): void; /** * Returns the height of the rectangle. */ getHeigth(): number; /** * Sets the height of the rectangle. */ setHeight(h: number): void; /** * Returns the line width of the rectangle. */ getLineWidth(): number; /** * Sets the line width of the rectangle. */ setLineWidth(size: number): void; } /** * Defines the parameters for creating a {@link IMarkupRectangle | markup rectangle}. */ export interface IMarkupRectangleParams { /** * Screen coordinates of the top-left point (position) of the rectangle. */ position?: { x: number; y: number }; /** * Screen coordinates of the bottom-right point (position) of the rectangle. */ position2?: { x: number; y: number }; /** * Width of the rectangle. * * @default 200 */ width?: number; /** * Height of the rectangle. * * @default 200 */ height?: number; /** * Line width. * * @default 4 */ lineWidth?: number; /** * Line color as a string in hexadecimal color syntax `#RGB` color using its primary color components * (red, green, blue) written as hexadecimal numbers. * * @default "#ff0000" */ color?: string; /** * Internal markup object identifier. */ id?: string; }