import { IAutoEasingMethod, Vec } from "../../../math"; import { ILayerMaterialOptions, IShaderInitialization } from "../../../types"; import { ILayer2DProps, Layer2D } from "../../view/layer-2d"; import { ArcInstance } from "./arc-instance"; export declare enum ArcScaleType { /** All dimensions are within world space */ NONE = 0, /** * The thickness of the arc is in screen space. Thus, camera zoom changes will not affect it and * must be controlled by scaleFactor alone. */ SCREEN_CURVE = 1 } export interface IArcLayerProps extends ILayer2DProps { scaleType?: ArcScaleType; animate?: { angle?: IAutoEasingMethod; angleOffset?: IAutoEasingMethod; center?: IAutoEasingMethod; colorEnd?: IAutoEasingMethod; colorStart?: IAutoEasingMethod; radius?: IAutoEasingMethod; thickness?: IAutoEasingMethod; }; } /** * This layer displays Arcs and provides as many controls as possible for displaying * them in interesting ways. */ export declare class ArcLayer> extends Layer2D { static defaultProps: IArcLayerProps; /** Easy lookup of all attribute names for the layer */ static attributeNames: { angle: string; angleOffset: string; center: string; colorEnd: string; colorStart: string; depth: string; radius: string; thickness: string; }; /** * Define our shader and it's inputs */ initShader(): IShaderInitialization; getMaterialOptions(): ILayerMaterialOptions; }