Переглянути джерело

crossing minimization step

Pavel Zhigalov 3 днів тому
батько
коміт
dd2b199461

+ 22 - 0
src/optimizer/types/sugiyama-based/CrossingMinimizationStep.ts

@@ -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 []
+	}
+}