public void Serialize(BotProgram program) { var serializer = new ConsoleWriteLineVisitor(); foreach (var command in program.Commands) { command.Visit(serializer); } }
public BotProgram Optimize(Model3D modelFrom, Model3D modelTo) { _program = new BotProgram(); _scene = Scene.FromModel(modelFrom); _modelToBuild = modelTo; _currentYLevel = modelFrom.Resolution - 1; OptimizeInternal(); return(_program); }
public BotProgram Optimize(Model3D modelToBuild) { _scene = Scene.FromModel(modelToBuild); _program = new BotProgram(); _voxelsToVoid = modelToBuild.NumberOfFullVoxels(); _currentYLevel = modelToBuild.Resolution - 1; _model = modelToBuild; OptimizeInternal(); return(_program); }
public BotProgram Optimize(Model3D modelToBuild) { _scene = Scene.New(modelToBuild.Resolution); _program = new BotProgram(); _voxelsToFill = modelToBuild.NumberOfFullVoxels(); _currentYLevel = 0; _model = modelToBuild; OptimizeInternal(); return _program; }
public BotProgram Optimize(Model3D modelToBuild) { _modelToBuild = modelToBuild; _treeToConstruct = _modelToBuild.ToOctoTree(); _scene = Scene.New(_modelToBuild.Resolution); _program = new BotProgram(); _resolution = _modelToBuild.Resolution; _resolutionSquared = _resolution * _resolution; _dsu = new DSU(_resolutionSquared * _resolution + 1); _voxelsFilled = 0; // Console.WriteLine("Starting to optimize..."); OptimizeInternal(); return(_program); }
private void OptimizeProgram() { _program = new BotProgram(_movementOptimizer.OptimizeSMoves(_program.Commands.ToList())); }