UNPKG

scichart

Version:

Fast WebGL JavaScript Charting Library and Framework

69 lines (68 loc) 2.68 kB
import { SCRTPen } from "../../types/TSciChart"; import { BaseCache } from "./BaseCache"; import { WebGlPen } from "./WebGlPen"; export interface IPenOptions { /** * The stroke for the {@link SCRTPen} * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)``` */ stroke: string; /** * The strokeThickness for the {@link SCRTPen} */ strokeThickness?: number; /** * The strokeDashArray for the {@link SCRTPen} */ strokeDashArray?: number[]; /** * The opacity for the {@link SCRTPen} * @remarks Acceptable values 0.0 - 1.0 */ opacity?: number; /** * The antiAliased flag for the {@link SCRTPen} */ antiAliased?: boolean; } /** * @ignore */ export declare class Pen2DCache extends BaseCache<WebGlPen> { private stroke; private opacity; private strokeThickness; private adjustedStrokeThickness; private strokeDashArray; private adjustedStrokeDashArray; private antiAliased; get value(): WebGlPen; /** * Creates or fetches a new pen with the specified color string, stroke thickness and antialiased property * @param options */ create(options: IPenOptions): WebGlPen; } /** * Retrieves a native {@link WebGlPen} Pen from the provided {@link Pen2DCache} cache object. * The retrieved entity is a wrapper around {@link SCRTPen} * @param penCache The object that stores a pen * @returns the new or existing instance of {@link WebGlPen}} */ export declare const getWebGlPenFromCache: (penCache: Pen2DCache) => WebGlPen; /** * Retrieves a native {@link SCRTPen} Pen from the provided {@link Pen2DCache} cache object * @param penCache The object that stores a pen * @returns the new or existing instance of {@link SCRTPen}} */ export declare const getScrtPenFromCache: (penCache: Pen2DCache) => SCRTPen; /** * Creates a native {@link SCRTPen} Pen from html color code string passed in and caches it * @param penCache The object that will store a pen * @param stroke The HTML Color code * @param strokeThickness The strokethickness in pixels * @param opacity The opacity factor * @param strokeDashArray the StrokeDashArray which defines any dash e.g. [2,2] means dash for 2pts, gap for 2pts (or undefined = solid line). * @returns the new or existing instance of {@link SCRTPen}} */ export declare const createPenInCache: (penCache: Pen2DCache, stroke: string, strokeThickness: number, opacity: number, strokeDashArray?: number[], antiAliased?: boolean) => SCRTPen;