index.d.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. /**
  2. * 自动布局插件
  3. * 依赖flowPath插件
  4. * 未完善
  5. */
  6. import LogicFlow from '@logicflow/core';
  7. declare class AutoLayout {
  8. lf: LogicFlow;
  9. levelHeight: any[];
  10. newNodeMap: Map<string, any>;
  11. trunk: any[];
  12. static pluginName: string;
  13. constructor({ lf }: {
  14. lf: any;
  15. });
  16. layout(data: any, path: any): void;
  17. private setNodePosition;
  18. /**
  19. * 1. 处理边上的文本
  20. * 2. 主干节点之间直接的边
  21. * 3. 一个节点被多个连接作为目标节点,合理分配锚点位置。
  22. */
  23. private getEdgeDataPoints;
  24. /**
  25. * 获取边的连接节点相对位置。
  26. * source一定在target左边。
  27. * 1. 如果source和target在同一x, y坐标内容。
  28. * 2. 如果source在target左上方。
  29. * 3. 如果source在target左下方。
  30. */
  31. private getRelativePosition;
  32. /**
  33. * 获取边节点图形的宽高。
  34. */
  35. private getShape;
  36. private formatData;
  37. addLevelHeight(level: any, height?: number, isNegative?: boolean): void;
  38. getLevelHeight(level: any, isNegative?: boolean): any;
  39. }
  40. export { AutoLayout };