/** * 自动布局插件 * 依赖flowpath插件 * 未完善 */ import LogicFlow from 'flow-lcl/core'; declare class AutoLayout { lf: LogicFlow; levelHeight: any[]; newNodeMap: Map; constructor({ lf }: { lf: any; }); layout(data: any, path: any): void; private setNodePosition; /** * 1. 处理连线上的文本 * 2. 主干节点之间直接的连线 * 3. 一个节点被多个连接作为目标节点,合理分配锚点位置。 */ private getEdgeDataPoints; /** * 获取连线的连接节点相对位置。 * source一定在target左边。 * 1. 如果source和target在同一x, y坐标内容。 * 2. 如果source在target左上方。 * 3. 如果souce在target左下方。 */ private getRelativePosition; /** * 获取连线节点图形的宽高。 */ private getShape; private formatData; addLevelHeight(level: any, height?: number, isNegative?: boolean): void; getLevelHeight(level: any, isNegative?: boolean): any; } export { AutoLayout, };