@visactor/vgrammar-wordcloud
Version:
WordCloud layout transform for VGrammar
35 lines (34 loc) • 1.11 kB
TypeScript
import { type IProgressiveTransformResult } from '@visactor/vgrammar-core';
import type { IBaseLayoutOptions } from './interface';
import { BaseLayout } from './base';
interface IGridLayoutOptions extends IBaseLayoutOptions {
gridSize?: number;
ellipticity?: number;
}
export declare class GridLayout extends BaseLayout<IGridLayoutOptions> implements IProgressiveTransformResult {
static defaultOptions: Partial<IGridLayoutOptions>;
private gridSize;
private center;
private pointsAtRadius;
private ngx;
private ngy;
private grid;
private maxRadius;
constructor(options: IGridLayoutOptions);
private getPointsAtRadius;
private getTextInfo;
private calculateEmptyRate;
private fillGridAt;
private updateGrid;
private canFitText;
layoutWord(index: number, shrinkRatio?: number): boolean;
private outputText;
private initGrid;
canRepeat(): boolean;
layout(data: any[], config: {
width: number;
height: number;
origin?: [number, number];
}): import("./interface").TagOutputItem[];
}
export {};