scichart
Version:
Fast WebGL JavaScript Charting Library and Framework
59 lines (58 loc) • 2.53 kB
TypeScript
import { GradientParams } from "../../../../Core/GradientParams";
import { SCRTDoubleVector, TSciChart } from "../../../../types/TSciChart";
import { ICustomTextureOptions } from "../../../Drawing/BrushCache";
import { WebGlRenderContext2D } from "../../../Drawing/WebGlRenderContext2D";
import { IPointSeries } from "../../../Model/PointSeries/IPointSeries";
import { RenderPassData } from "../../../Services/RenderPassData";
import { TDpiChangedEventArgs } from "../../TextureManager/DpiHelper";
import { FastRectangleRenderableSeries } from "../FastRectangleRenderableSeries";
import { BaseSeriesDrawingProvider } from "./BaseSeriesDrawingProvider";
interface IRectangleSeriesDrawingProviderProperties {
stroke?: string;
strokeThickness?: number;
fill?: string;
opacity?: number;
fillLinearGradient?: GradientParams;
customTextureOptions?: ICustomTextureOptions;
}
/**
* Used internally - a drawing provider performs drawing for a {@link FastRectangleRenderableSeries} using
* our WebAssembly WebGL rendering engine
*/
export declare class RectangleSeriesDrawingProvider extends BaseSeriesDrawingProvider<FastRectangleRenderableSeries> {
private nativeDrawingProvider;
private strokePenCache;
private strokePenFillColoredCache;
private fillBrushCache;
private args;
/**
* Creates an instance of the {@link RectangleSeriesDrawingProvider}
* @param webAssemblyContext The {@link TSciChart | SciChart 2D WebAssembly Context} containing native methods and
* access to our WebGL2 Engine and WebAssembly numerical methods
* @param parentSeries the parent {@link FastRectangleRenderableSeries} which this drawing provider is attached to
*/
constructor(webAssemblyContext: TSciChart, parentSeries: FastRectangleRenderableSeries, ySelector?: (ps: IPointSeries) => SCRTDoubleVector, xSelector?: (ps: IPointSeries) => SCRTDoubleVector);
/**
* @inheritDoc
*/
onAttachSeries(): void;
/**
* @inheritDoc
*/
delete(): void;
getProperties(parentSeries: FastRectangleRenderableSeries): IRectangleSeriesDrawingProviderProperties;
/**
* @inheritDoc
*/
draw(renderContext: WebGlRenderContext2D, renderPassData: RenderPassData): void;
/**
* @inheritDoc
*/
onDpiChanged(args: TDpiChangedEventArgs): void;
/**
* @inheritDoc
*/
onSeriesPropertyChange(propertyName: string): void;
private createBrush;
}
export {};