|
|
@@ -0,0 +1,22 @@
|
|
|
+import SugiyamaOptimizerStep, {Context} from "../../abstract/sugiyama-based/SugiyamaOptimizerStep.js";
|
|
|
+import OptimizerError from "../../errors/OptimizerError.js";
|
|
|
+import XDirectedGraph from "../../../graphs/types/XDirectedGraph.js";
|
|
|
+import XVertex from "../../../graphs/types/XVertex.js";
|
|
|
+
|
|
|
+export default class CrossingMinimizationStep extends SugiyamaOptimizerStep {
|
|
|
+ process(context: Context): Context {
|
|
|
+ const { graph, layers } = context;
|
|
|
+
|
|
|
+ if(!layers)
|
|
|
+ throw new OptimizerError("Layers with vertices was not found")
|
|
|
+
|
|
|
+ this.minimizeCrosses(graph, layers);
|
|
|
+
|
|
|
+ return super.process(context);
|
|
|
+ }
|
|
|
+
|
|
|
+ protected minimizeCrosses(graph: XDirectedGraph, layers: XVertex[][]): XVertex[][] {
|
|
|
+ // TODO
|
|
|
+ return []
|
|
|
+ }
|
|
|
+}
|