Esempio n. 1
0
        private float[,] CombineInitialConfigs(List <float[, ]> configs, DimensionsModel dimensions)
        {
            float[,] result = this._matrixService.CreateEmptyMatrix(dimensions);

            for (var i = 0; i < dimensions.Height; i++)
            {
                for (var j = 0; j < dimensions.Width; j++)
                {
                    result[i, j] = -1;

                    for (var k = 0; k < configs.Count; k++)
                    {
                        var cellValue = configs[k][i, j];

                        if (cellValue >= 0)
                        {
                            result[i, j] = cellValue;
                            break;
                        }
                    }
                }
            }

            return(result);
        }
Esempio n. 2
0
        private float[,] Initialize(List <float[, ]> configs, DimensionsModel dimensions, int nrPlayers, LifeLikeModel ruleSet)
        {
            _grid       = CombineInitialConfigs(configs, dimensions);
            _dimensions = dimensions;

            this._nrPlayers = nrPlayers;
            this._ruleSet   = ruleSet;

            return(_grid);
        }
Esempio n. 3
0
        public MatchModel GetMatchResources(DimensionsModel dimensions, int nrPlayers, int maxGenerations, string ruleset)
        {
            var playerResources = this._playerResourcesService.GetPlayerResources(nrPlayers);
            var playerNumbers   = this._playerResourcesService.InitPlayerNumbers(nrPlayers);
            var gameMap         = this._mapGenerationService.RandomGen(dimensions, nrPlayers);
            var ruleSet         = this._ruleSetService.GetByName(ruleset);
            var result          = new MatchModel(dimensions, maxGenerations, nrPlayers, playerResources, playerNumbers, gameMap, ruleSet);

            return(result);
        }
        public DimensionsViewModel(DimensionsModel model)
        {
            Model                 = model;
            Dimensions            = Model.CollectDimensions();
            ReplacementDimensions = Model.CollectDimensions();

            Replace                   = new RelayCommand(OnReplace);
            Close                     = new RelayCommand <UserControl>(OnClose);
            SubmitComment             = new RelayCommand(OnSubmitComment);
            CheckDimension            = new RelayCommand <bool>(OnCheckDimension);
            CheckReplacementDimension = new RelayCommand <bool>(OnCheckReplacementDimension);
            ControlClosed             = new RelayCommand <UserControl>(OnControlClosed);

            Messenger.Default.Register <DimensionsDeleted>(this, OnDimensionsDeleted);
        }
        public float[,] RandomGen(DimensionsModel dimensions, int nrPlayers)
        {
            var map        = this._matrixService.CreateEmptyMatrix(dimensions);
            var randomizer = new Random();

            for (int i = 0; i < map.GetLength(0); i++)
            {
                for (int j = 0; j < map.GetLength(1); j++)
                {
                    map[i, j] = randomizer.Next(nrPlayers);
                }
            }

            return(map);
        }
        public async Task <IActionResult> Get([FromRoute] DimensionsModel dimensionsModel)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var dimensions = new Tuple <int, int>(dimensionsModel.Width, dimensionsModel.Height);
            var result     = await _fakePhotoService.GetBytePhotoByDimensionsAsync(dimensions);

            var imageFullPath = await _imageSourceService.WriteImageFileAsync(dimensions, result);

            var imageSource = _imageSourceService.GenerateImageTag(imageFullPath);

            return(Content(imageSource, "text/html"));
        }
Esempio n. 7
0
        public float[,] CopyMatrix(float[,] matrix)
        {
            var matrixHeight = matrix.GetLength(0);
            var matrixWidth  = matrix.GetLength(1);

            var dimensions = new DimensionsModel(matrixHeight, matrixWidth);
            var result     = CreateEmptyMatrix(dimensions);

            for (var i = 0; i < matrixHeight; i++)
            {
                for (var j = 0; j < matrixWidth; j++)
                {
                    result[i, j] = matrix[i, j];
                }
            }

            return(result);
        }
Esempio n. 8
0
 public float[,] CreateEmptyMatrix(DimensionsModel dimensions)
 {
     return(new float[dimensions.Height, dimensions.Width]);
 }