ag-charts-enterprise
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
82 lines (81 loc) • 3.14 kB
TypeScript
import type { AgBaseCrossLineLabelOptions } from 'ag-charts-community';
import { _ModuleSupport } from 'ag-charts-community';
import { BaseProperties, ChartAxisDirection, type Scale } from 'ag-charts-core';
declare const LabelStyle: typeof _ModuleSupport.LabelStyle;
export declare class PolarCrossLineLabel extends LabelStyle implements AgBaseCrossLineLabelOptions {
enabled?: boolean;
padding: number;
text?: string;
parallel?: boolean;
/** Used by radius cross-lines only; ignored on angle cross-lines. */
positionAngle?: number;
}
/**
* Unified polar cross-line. Branches on `direction` to render either an angle-axis or
* radius-axis cross-line; the merged class replaces the previous abstract base + `AngleCrossLine`
* / `RadiusCrossLine` subclass split. The factory in the enterprise `CrossLinesModule` constructs
* with the appropriate direction; `applyPolarLayout` populates whichever fields the active
* direction consumes (`ticks` for angle, `gridAngles` for radius).
*/
export declare class PolarCrossLine extends BaseProperties implements _ModuleSupport.PolarCrossLine {
static readonly className = "PolarCrossLine";
readonly id: string;
enabled?: boolean;
type: _ModuleSupport.CrossLineType;
range?: [unknown, unknown];
value?: unknown;
defaultColorRange: string[];
fill?: string;
fillOpacity?: number;
stroke?: string;
strokeWidth?: number;
strokeOpacity?: number;
lineDash?: [];
shape: 'polygon' | 'circle';
label: PolarCrossLineLabel;
scale?: Scale<any, number>;
clippedRange: [number, number];
gridLength: number;
gridPadding: number;
sideFlag: 1 | -1;
parallelFlipRotation: number;
regularFlipRotation: number;
direction: ChartAxisDirection;
axisInnerRadius: number;
axisOuterRadius: number;
/** Populated by `applyPolarLayout` for angle cross-lines (axis tick values). */
ticks: any[];
/** Populated by `applyPolarLayout` for radius cross-lines (radial grid angles). */
gridAngles?: number[];
readonly lineGroup: _ModuleSupport.Group<unknown>;
readonly rangeGroup: _ModuleSupport.Group<unknown>;
readonly labelGroup: _ModuleSupport.Group<unknown>;
private readonly polygonNode;
private readonly sectorNode;
private readonly lineNode;
private readonly crossLineRange;
private readonly labelNode;
private outerRadius;
private innerRadius;
private _isRange;
constructor(direction: ChartAxisDirection);
applyPolarLayout(layout: _ModuleSupport.PolarAxisLayout): void;
update(visible: boolean): void;
private updateAngle;
private angleVisibilityCheck;
private updateAngleLineNode;
private updateAnglePolygonNode;
private updateAngleSectorNode;
private updateAngleLabelNode;
private updateRadius;
private updateRadii;
private drawRadiusPolygon;
private updateRadiusPolygonNode;
private updateRadiusSectorNode;
private updateRadiusLabelNode;
private getRadiusPadding;
private assignCrossLineGroup;
private setSectorNodeProps;
private setLabelNodeProps;
}
export {};