private static PointProjectionSolver Solve2(ProblemSpec problemSpec, double originality) { var solver = SolverMaker.CreateSolver(problemSpec); var ribbonWidth = RibbonIndicator.GetRibbonWidth(problemSpec); return(SolverMaker.Solve(solver, ribbonWidth.HasValue ? ribbonWidth.Value : 1, originality)); }
private static SolutionSpec Solve(ProblemSpec problemSpec, double originality) { var solver = SolverMaker.CreateSolver(problemSpec); var ribbonWidth = RibbonIndicator.GetRibbonWidth(problemSpec); var simpleSolver = SolverMaker.Solve(solver, ribbonWidth.HasValue ? ribbonWidth.Value : 1, originality); if (simpleSolver != null) { return(SolutionSpecBuilder.BuildSolutionByRibbonGraph(simpleSolver.Projection)); } return(null); }