Загрузка данных


using System;
using System.Drawing;
using System.Windows.Forms;

class HouseForm : Form
{
    public HouseForm()
    {
        this.Text = "Домик по клеткам";
        this.Size = new Size(600, 600);
        this.Paint += new PaintEventHandler(DrawHouse);
    }

    private void DrawHouse(object sender, PaintEventArgs e)
    {
        Graphics g = e.Graphics;
        int cellSize = 5; // одна клетка = 5 пикселей
        
        // Рисуем сетку (20x20 клеток, смещение 50 пикселей от края)
        int startX = 50;
        int startY = 50;
        int gridSize = 20; // 20x20 клеток
        
        Pen gridPen = new Pen(Color.LightGray, 1);
        
        for (int i = 0; i <= gridSize; i++)
        {
            // Вертикальные линии
            g.DrawLine(gridPen, startX + i * cellSize, startY, startX + i * cellSize, startY + gridSize * cellSize);
            // Горизонтальные линии
            g.DrawLine(gridPen, startX, startY + i * cellSize, startX + gridSize * cellSize, startY + i * cellSize);
        }
        
        // Рисуем домик чёрными линиями (координаты в клетках)
        Pen housePen = new Pen(Color.Black, 2);
        
        // Стена (квадрат с клетки 4 по 15)
        // От (4,10) до (15,19) в клетках -> переводим в пиксели
        int wallLeft = startX + 4 * cellSize;
        int wallTop = startY + 10 * cellSize;
        int wallRight = startX + 15 * cellSize;
        int wallBottom = startY + 19 * cellSize;
        
        g.DrawRectangle(housePen, wallLeft, wallTop, wallRight - wallLeft, wallBottom - wallTop);
        
        // Крыша (треугольник от клетки (3,10) до вершины (9,4) до (16,10))
        Point[] roof = {
            new Point(startX + 3 * cellSize, startY + 10 * cellSize),
            new Point(startX + 9 * cellSize, startY + 4 * cellSize),
            new Point(startX + 16 * cellSize, startY + 10 * cellSize)
        };
        g.DrawPolygon(housePen, roof);
        
        // Дверь (от клетки (9,15) до (11,19))
        g.DrawRectangle(housePen, 
            startX + 9 * cellSize, startY + 15 * cellSize,
            2 * cellSize, 4 * cellSize);
        
        // Окно (от клетки (6,12) до (8,14))
        g.DrawRectangle(housePen,
            startX + 6 * cellSize, startY + 12 * cellSize,
            2 * cellSize, 2 * cellSize);
        
        // Рама окна (крест)
        g.DrawLine(housePen,
            startX + 7 * cellSize, startY + 12 * cellSize,
            startX + 7 * cellSize, startY + 14 * cellSize);
        g.DrawLine(housePen,
            startX + 6 * cellSize, startY + 13 * cellSize,
            startX + 8 * cellSize, startY + 13 * cellSize);
        
        // Труба (от клетки (13,7) до (14,10))
        g.DrawRectangle(housePen,
            startX + 13 * cellSize, startY + 7 * cellSize,
            cellSize, 3 * cellSize);
    }

    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.Run(new HouseForm());
    }
}


using System;
using System.Drawing;
using System.Windows.Forms;

class HouseForm : Form
{
    public HouseForm()
    {
        this.Text = "Домик";
        this.Size = new Size(500, 500);
        this.Paint += (s, e) =>
        {
            Graphics g = e.Graphics;
            int s5 = 5; // клетка 5 пикселей
            
            // Сетка
            for (int i = 0; i <= 20; i++)
            {
                g.DrawLine(Pens.LightGray, 50 + i * s5, 50, 50 + i * s5, 150);
                g.DrawLine(Pens.LightGray, 50, 50 + i * s5, 150, 50 + i * s5);
            }
            
            // Домик (только черные линии)
            g.DrawRectangle(Pens.Black, 70, 100, 55, 50);  // стена
            g.DrawLine(Pens.Black, 65, 100, 97, 70);      // крыша левая
            g.DrawLine(Pens.Black, 97, 70, 130, 100);     // крыша правая
            g.DrawRectangle(Pens.Black, 95, 130, 15, 20); // дверь
            g.DrawRectangle(Pens.Black, 75, 110, 15, 15); // окно
            g.DrawLine(Pens.Black, 82, 110, 82, 125);     // рама |
            g.DrawLine(Pens.Black, 75, 117, 90, 117);     // рама —
            g.DrawRectangle(Pens.Black, 115, 85, 5, 15);  // труба
        };
    }

    static void Main()
    {
        Application.Run(new HouseForm());
    }
}