public void SolveOnClick() { solveButton.interactable = false; skipButton.interactable = true; switch (solveAlgorithmDropdown.value) { case 0: throw new IndexOutOfRangeException(); case 1: solveAlgorithm = new WallFollower(cellManager); break; case 2: solveAlgorithm = new Dijkstras(cellManager, distanceText); break; default: break; } SolveHandler.solveSpeed = speedSlider.value; SolveHandler.solveState = SolveHandler.State.PLAY; solveHandlerClone = Instantiate(solveHandler); solveHandlerClone.Solve(solveAlgorithm, this); }
//Copy constructor public Boa_Algorithm(Boa_Algorithm algorithmSource) { solveAlgorithm = algorithmSource.solveAlgorithm; InputDimension = algorithmSource.InputDimension; OutputDimension = algorithmSource.OutputDimension; InputIsFixedSize = algorithmSource.InputIsFixedSize; OutputIsFixedSize = algorithmSource.OutputIsFixedSize; TryAddParent(algorithmSource.parent); }
protected void CreateAndSetAlgorithm(IGH_DataAccess DA, SolveAlgorithm solveAlgorithm) { CreateAndSetAlgorithm(DA, solveAlgorithm, 0, 0); }
protected void CreateAndSetAlgorithm(IGH_DataAccess DA, SolveAlgorithm solveAlgorithm, int inputSize, int outputSize) { var algorithm = new Boa_Algorithm(solveAlgorithm, inputSize, outputSize); CreateAndSetAlgorithm(DA, algorithm); }
public void Solve(SolveAlgorithm solveAlgorithm, UIHandler uiHandler) { this.solveAlgorithm = solveAlgorithm; this.uiHandler = uiHandler; }
public Boa_FixedInputAlgorithm(SolveAlgorithm solveAlgorithm, int inputDimension) { this.solveAlgorithm = solveAlgorithm; InputDimension = inputDimension; }
/// <summary> /// Use this constructor if your algorithm expects and returns arrays of certain lengths. /// </summary> /// <param name="solveAlgorithm"></param> /// <param name="inputDimension"></param> /// <param name="outputDimension"></param> public Boa_Algorithm(SolveAlgorithm solveAlgorithm, int inputDimension, int outputDimension) { //if (inputDimension != 0 ) TrySetDimensions(inputDimension, outputDimension); this.solveAlgorithm = solveAlgorithm; }
/// <summary> /// Use this constructor if your algorithm works on arrays of any length and returns arrays of that same length. /// </summary> /// <param name="solveAlgorithm"></param> public Boa_Algorithm(SolveAlgorithm solveAlgorithm) : this(solveAlgorithm, 0, 0) { }