Лабораторная работа 2 - Применение модели грид-потоков для внедрения в грид существующего приложения

 

Конструктор класса грид-потока RenderThread

 


 

[Serializable]

public class RenderThread : GThread

{

    ...

 

    /// <summary>

    /// Создает новый экземпляр грид-потока для рендеринга части изображения.

    /// </summary>

    /// <param name="inputScene">строка с текстовым представлением сцены</param>

    /// <param name="tempDirectory">временный каталог</param>

    /// <param name="workDirectory">рабочий каталог</param>

    /// <param name="width">ширина изображения</param>

    /// <param name="height">высота изображения</param>

    /// <param name="startRow">начальный ряд</param>

    /// <param name="startCol">начальный столбец</param>

    /// <param name="endRow">конечный ряд</param>

    /// <param name="endCol">конечный столбец</param>

    /// <param name="antialiasLevel">качество сглаживания изображения</param>

    public RenderThread(string inputScene, string tempDirectory, string workDirectory,

                        int width, int height, int startRow, int startCol, int endRow, int endCol,

                        AntialisingLevel antialiasLevel, string additionalArguments)

    {

        // Устанавливаем строку с текстовым представлением сцены

        this.inputScene = inputScene;

 

        // Устанавливаем каталог для хранения временных файлов

        this.tempDirectory = tempDirectory;

 

        // Устанавливаем рабочий каталог приложения MegaPOV

        this.workDirectory = workDirectory;

 

        // Устанавливаем дополнительные аргументы приложения MegaPOV

        this.additionalArguments = additionalArguments;

 

        // Устанавливаем ширину и высоту изображения в пикселях

        this.width = width;

        this.height = height;

 

        // Устанавливаем границы прямоугольной области для рендеринга

        this.startCol = startCol;

        this.startRow = startRow;

        this.endCol = endCol;

        this.endRow = endRow;

 

        // Устанавливаем настройки сглаживания изображения

        this.antialiasLevel = antialiasLevel;

 

        // Создаем точечный рисунок для хранения части изображения

        this.image = new Bitmap(endCol - startCol, endRow - startRow);

    }

 

    ...

}