Генерирование шахматной доски (строк) по m (столбцам) - PullRequest
0 голосов
/ 20 октября 2011

Представьте себе следующий сценарий (Silverlight 4).У меня есть два прямоугольника.Один черный, а другой белый.Они оба имеют фиксированный размер, скажем, 50х50.У меня также есть область (500x500), которую я хочу заполнить этими прямоугольниками, но поочередно - белым, черным, белым, черным и т. Д. Чтобы лучше проиллюстрировать, взгляните на ссылки ниже:

http://screencast.com/t/BwsPSbtg2eaM

http://screencast.com/t/gTuexSSyW

Видео (ссылка № 2) демонстрирует именно то, чего я пытаюсь достичь.

Любая помощь будет принята с благодарностью!

Jones

1 Ответ

1 голос
/ 20 октября 2011
    int totalRectsInaRow = TotalWidth/ WidthOfOneRect;
    int totalRectsInaColumn = TotalHeight/ HeightOfOneRect;

    //Create a Grid of Width = TotalWidth and Height = Total Height;
    //Add columns equal to totalRectsInaColumn and rows equal to totalRectsInaRow in Grid
    //Set wdith of each column equal to width of one rectangle
    //set height of each row equal to height of one rectangle

    bool drawWhite = true;
    for (int i = 0; i < totalRectsInaColumn; i++)
    {
        for (int j = 0; j < totalRectsInaRow; j++)
        {
            if (drawWhite)
            { 
                //draw white rectanlge at i column and j row
                //basically you create a rectangle and place it in grid on particular location
                DrawWhileRectangle(i, j);
                drawWhite = false;
            }
            else
            {
                //draw black rectanlge at i column and j row
                //basically you create a rectangle and place it in grid on particular location
                DrawBlackRectangle(i, j);
                drawWhite = true;
            }
        }
        drawWhite = !drawWhite;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...