示例#1
0
 /// <summary>
 /// Отрисовывает активные клетки игрового поля.
 /// </summary>
 public void Draw(Graphics bitmapGraphics, BitmapCellsStorage bitmapCells)
 {
     foreach (Cell cell in field)
     {
         cell.Draw(bitmapGraphics, bitmapCells);
     }
 }
示例#2
0
 /// <summary>
 /// Отрисовывает изменившиеся клетки игрового поля.
 /// </summary>
 public void DrawChangedCells(Graphics bitmapGraphics, BitmapCellsStorage bitmapCells)
 {
     foreach (Cell cell in ListCellsForDraw)
     {
         cell.Draw(bitmapGraphics, bitmapCells);
     }
 }
示例#3
0
        /// <summary>
        /// Отрисовка клетки в заданной точке.
        /// <param name="p">Положение клетки.</param>
        /// </summary>
        public void Draw(Graphics g, BitmapCellsStorage b, Point p)
        {
            Bitmap bm = b.GetBitmap(Status);

            // Координаты точки для отрисовки

            p.X *= bm.Width;
            p.Y *= bm.Height;

            g.DrawImage(bm, p);
        }
示例#4
0
        /// <summary>
        /// Перерисовывает все клетки игрового поля(любого типа).
        /// </summary>
        /// <param name="bitmapGraphics"></param>
        /// <param name="bitmapCells"></param>
        /// <param name="rect">Ограничивающий прямоугольник в кординатах игрового поля.</param>
        public void Draw(Graphics bitmapGraphics, BitmapCellsStorage bitmapCells, Rectangle rect)
        {
            Bitmap bmNoCell = bitmapCells.GetBitmap(StatusCell.No);

            for (int x = rect.X; x < (rect.X + rect.Width); x++)
            {
                for (int y = rect.Y; y < (rect.Y + rect.Height); y++)
                {
                    Cell cell = field[x, y];

                    if (cell != null)
                    {
                        cell.Draw(bitmapGraphics, bitmapCells);
                    }
                    else
                    {
                        bitmapGraphics.DrawImage(bmNoCell, x * bmNoCell.Width, y * bmNoCell.Height);
                    }
                }
            }
        }
示例#5
0
 /// <summary>
 /// Перерисовывает всё игровое поле.
 /// </summary>
 /// <param name="bitmapGraphics"></param>
 /// <param name="bitmapCells"></param>
 public void DrawAll(Graphics bitmapGraphics, BitmapCellsStorage bitmapCells) => Draw(bitmapGraphics, bitmapCells, Rectangle);
示例#6
0
 /// <summary>
 /// Отрисовывает клетку
 /// </summary>
 /// <param name="g"></param>
 /// <param name="b"></param>
 public void Draw(Graphics g, BitmapCellsStorage b) => Draw(g, b, Location);