social_learning.World.clusteredLayout C# (CSharp) Method

clusteredLayout() private method

private clusteredLayout ( ) : void
return void
        private void clusteredLayout()
        {
            int speciesIdx = 0;
            foreach (var species in PlantTypes)
            {
                int clusterRadius = _random.Next(20) + 20;
                int k = _random.Next(5) + 5;
                int curx = _random.Next(Width - 2 * clusterRadius) + clusterRadius;
                int cury = _random.Next(Height - 2 * clusterRadius) + clusterRadius;
                for (int i = 0; i < species.Count; i++)
                {
                    if (i % k == 0)
                    {
                        curx = _random.Next(Width - 2 * clusterRadius) + clusterRadius;
                        cury = _random.Next(Height - 2 * clusterRadius) + clusterRadius;
                    }

                    int x = curx + _random.Next(clusterRadius) - clusterRadius / 2;
                    int y = cury + _random.Next(clusterRadius) - clusterRadius / 2;
                    var plant = Plants[speciesIdx * species.Count + i];
                    plant.Reset();
                    plant.X = x;
                    plant.Y = y;

                }
                speciesIdx++;
            }
        }
        #endregion