scichart
Version:
Fast WebGL JavaScript Charting Library and Framework
51 lines (50 loc) • 2.02 kB
TypeScript
import { Point } from "../../../Core/Point";
import { Rect } from "../../../Core/Rect";
import { ESurfaceType } from "../../../types/SurfaceType";
import { WebGlRenderContext2D } from "../../Drawing/WebGlRenderContext2D";
import { CoordinateCalculatorBase } from "../../Numerics/CoordinateCalculators/CoordinateCalculatorBase";
import { ArcAnnotationBase, IArcAnnotationBaseOptions } from "./ArcAnnotationBase";
import { EAnnotationType } from "./IAnnotation";
export interface IArcAnnotationOptions extends IArcAnnotationBaseOptions {
/**
* takes values from 0 to 1
*/
innerRadius?: number;
/**
* Height of the triangle. Negative values give an obtuse angle
*/
height?: number;
}
export declare class ArcAnnotation extends ArcAnnotationBase {
type: EAnnotationType;
readonly surfaceTypes: ESurfaceType[];
private innerRadiusProperty;
private heightProperty;
constructor(options?: IArcAnnotationOptions);
get innerRadius(): number;
set innerRadius(value: number);
get height(): number;
set height(value: number);
drawWithContext(renderContext: WebGlRenderContext2D, xCalc: CoordinateCalculatorBase, yCalc: CoordinateCalculatorBase, seriesViewRect: Rect, surfaceViewRect: Rect, chartViewRect: Rect): void;
calcDragDistance(xyValues: Point): void;
toJSON(): {
type: EAnnotationType;
options: Required<Omit<import("./AnnotationBase").IAnnotationBaseOptions, never>>;
};
/**
* Hit-test annotation clicked
* @param xCoord
* @param yCoord
* @returns
*/
protected checkIsClickedOnAnnotationInternal(xCoord: number, yCoord: number): boolean;
private getCircleCenterDataCoords;
private getCircleCenterXCoordinate;
private getCircleCenterYCoordinate;
private calcDataRadius;
private getRadius;
private getInnerRadius;
private getAspectRatio;
private calcStartEndAngles;
private getDataValuesFromCoordinates;
}