import { DivLayer } from '../models/div-layer'; import { Subscription } from 'rxjs'; import { ForceGraphService } from './render/force.service'; import { CanvasRenderer } from './render/canvas-renderer'; import { DeepPartial, IBaseGraphData, IBaseOptions, ITooltip } from '../models/force-graph.types'; import { Node, Link } from '../models/force-graph'; export default class Force { id: string; private options; parentElem: HTMLElement | undefined; nodeTooltipElem: HTMLElement | undefined; nodeClickTooltipElem: HTMLElement | undefined; linkTooltipElem: HTMLElement | undefined; linkClickTooltipElem: HTMLElement | undefined; nodeMenuElem: HTMLElement | undefined; linkMenuElem: HTMLElement | undefined; divLayer: DivLayer; forceGraph: ForceGraphService; clickedNode: Node | undefined; clickedHotKeyNode: Node | undefined; clickedLink: Link | undefined; hoveredLabel: Link | undefined; contextMenuNode: Node | undefined; contextMenuLink: Link | undefined; contextData: Node | undefined; hisGraphData: IBaseGraphData | undefined; hisLegendData: IBaseGraphData | undefined; legendData: any; data: IBaseGraphData | undefined; graphRef: HTMLElement | undefined; graphLegend: HTMLElement | undefined; subscription: Subscription | undefined; subscriptions: Subscription[]; renderer: CanvasRenderer; constructor(parent: HTMLElement, data: IBaseGraphData, options?: DeepPartial, tooltip?: Array); resize(): void; /** * 绘制图谱 */ renderGraph(): void; updateGraph(data: IBaseGraphData, options?: DeepPartial, node?: any, siteAble?: boolean): void; render(data: IBaseGraphData, options?: DeepPartial): void; renderLegend(): void; subscribeLegend(): void; renderEvent(): void; renderTooltip(tooltip: Array): void; setTooltip(e: any, element: any): void; initTooltip(e: any): void; clearTooltip(array: Array): void; formatNodeAttr(data: any): { nodes: any[]; links: any[]; }; removeNodeAttr(_data: any): { nodes: any[]; links: any[]; }; /** * 生成筛选后的legend * @params data // 图谱legend数据 */ filterLegendData(_data: any): void; /** * 触发图谱数据筛选 * @params legendItem 图例选中项 */ filterGraphData(legendItem: any): void; /** * 触发图谱数据高亮 * @params legendItem 图例选中项 */ highLightGraphData(legendItem: any): void; highLight(node: any): void; cancelHighLight(): void; getGraphData(): any; getAlphaEnd(): { alpha: number; end: boolean; }; nodeSiteCenter(tx: any, ty: any): void; stopSimulation(): void; highLightData(data: IBaseGraphData, options?: DeepPartial): void; toggleLinkVisible(check: boolean): void; setZoom(size: number): void; getZoom(): number; lock(type: boolean): void; setOption(option: DeepPartial): void; clearTooltipGroup(): void; closeTooltipGroup(): void; downloadImg(text?: string): void; destroy(): void; redraw(data: any): void; edit(item: any): void; closeEdit(): void; setNodeSelected(): void; }