UNPKG

webglimpse

Version:

Webglimpse is a data visualization library for the web.

97 lines (96 loc) 4.33 kB
import { Painter, Pane } from './core'; import { BoundsUnmodifiable, Size } from './bounds'; import { Color } from './color'; import { Program, UniformColor, Attribute, Uniform1f } from './shader'; import { DynamicBuffer } from './buffer'; import { Texture2D, TextureDrawOptions } from './texture'; import { Notification } from './util/notification'; export declare function newGroupPainter(...painters: Painter[]): Painter; export declare function newBlendingBackgroundPainter(color: Color): Painter; export declare class Highlight { private _color; private _dashPattern; private _dashLength; program: Program; u_Color: UniformColor; a_XyNdc: Attribute; u_yOffset: Uniform1f; u_DashPattern: Uniform1f; u_DashLength: Uniform1f; numVertices: number; xy_NDC: Float32Array; xyBuffer_NDC: DynamicBuffer; constructor(color?: Color); get color(): Color; set color(color: Color); get dashPattern(): number; set dashPattern(pattern: number); get dashLength(): number; set dashLength(length: number); newPainter(): (gl: WebGLRenderingContext, viewport: BoundsUnmodifiable) => void; } export declare class Background { private _color; constructor(color?: Color); get color(): Color; set color(color: Color); newPainter(): (gl: WebGLRenderingContext, viewport: BoundsUnmodifiable) => void; } export declare function newBackgroundPainter(color: Color): Painter; export declare function newTexturePainter(texture: Texture2D, xFrac: number, yFrac: number, options: TextureDrawOptions): (gl: WebGLRenderingContext, viewport: BoundsUnmodifiable) => void; export declare function newSolidPane(color: Color): Pane; export declare function fitToTexture(texture: Texture2D): (parentPrefSize: Size) => void; export declare function fixedSize(w: number, h: number): (parentPrefSize: Size) => void; /** * Takes (x,y) in NDC (Normalized Device Coords), in attribute a_XyNdc */ export declare let xyNdc_VERTSHADER: string; /** * Takes (x,y) as fractions of the viewport, in attribute a_XyFrac */ export declare let xyFrac_VERTSHADER: string; export declare let solid_FRAGSHADER: string; export declare let dash_FRAGSHADER: string; export declare let dash2_FRAGSHADER: string; export declare let varyingColor_FRAGSHADER: string; export declare let modelview_VERTSHADER: string; export declare let nearestPixelCenter_GLSLFUNC: string; export declare enum Side { TOP = 0, BOTTOM = 1, RIGHT = 2, LEFT = 3 } /** * Converts viewport-fraction to NDC (Normalized Device Coords) */ export declare function fracToNdc(frac: number): number; export declare function nearestPixel(viewportFrac: number, viewportSize: number, imageAnchor: number, imageSize: number): number; export declare function putQuadXys(xys: Float32Array, index: number, xLeft: number, xRight: number, yTop: number, yBottom: number): number; export declare function putUpperLeftTriangleXys(xys: Float32Array, index: number, xLeft: number, xRight: number, yTop: number, yBottom: number): number; export declare function putLowerRightTriangleXys(xys: Float32Array, index: number, xLeft: number, xRight: number, yTop: number, yBottom: number): number; export declare function putUpperRightTriangleXys(xys: Float32Array, index: number, xLeft: number, xRight: number, yTop: number, yBottom: number): number; export declare function putLowerLeftTriangleXys(xys: Float32Array, index: number, xLeft: number, xRight: number, yTop: number, yBottom: number): number; export declare function putQuadRgbas(rgbas: Float32Array, index: number, color: Color): number; export declare function putRgbas(rgbas: Float32Array, index: number, color: Color, count: number): number; export declare function clearSelection(): void; export declare class SimpleModel<V> { private _value; private _changed; constructor(value?: V); get value(): V; get changed(): Notification; set value(value: V); } export declare class XyModel { private _x; private _y; private _changed; constructor(x?: number, y?: number); get x(): number; get y(): number; get changed(): Notification; set x(x: number); set y(y: number); setXy(x: number, y: number): void; }