Практика программирования (Бейсик, Си, Паскаль)



   Подробное описание пластиковые окна kbe официальный сайт у нас.      Аренда автовышки, компания рентмашинери предлагает автовышки в аренду по выгодным ценам. |   

Закрашивание и заполнение замкнутых областей - часть 10


Попробуем подобрать узор заливки, при котором область покрывается красными штрихами длиной по четыре пиксела с шахматным расположением штрихов между строками. 0чевидно, что первые четыре байта строки-шаблона могут быть получены в виде суммы:

M1$=CHR$(&H0)+CHR$(&H0)+CHR$(&HF0)+CHR$(&HFF)

Первый байт подавляет биты синего цвета у всех восьми пикселов, второй -биты зеленого, третий байт формирует у первых четырех пикселов единичные биты красного цвета, сохраняя у оставшихся четырех нулевые разряды. Последний байт заносит по единице в бит яркости каждого пиксела, превращая черный цвет фона в темно-серый.

Три следующие четверки шаблона могут состоять из одинаковых наборов вида:

M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H00)+CHR$(&HFF) M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H00)+CHR$(&HFF) M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(SH00)+CHR$(&HFF)

Пятая строка шаблона должна изменять расположение красного штриха:

M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H0F)+CHR$(SHFF)

Наконец, три последних четверки должны повторять зазор между строками, описанный выше:

M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H00)+CHR$(&HFF) M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H00)+CHR$(&HFF) M1$=M1$+CHR$(&H0)+CHR$(&H0)+CHR$(&H00)+CHR$(&HFF)

0кончательный вариант программы, в которой можно поварьировать строку заливочного шаблона, приведен ниже.

Программа 8_10.bas

REM Красные штрихи в шахматном порядке SCREEN 12

I1$=CHR$(&HFF):' байт с битами повышенной интенсивности

B0$=CHR$(&H0):' байт с нулевыми битами синего цвета

G0$=CHR$(&H0):' байт с нулевыми битами зеленого цвета

R0$=CHR$(&H0):' байт с нулевыми битами красного цвета

R40$=CHR$(&HF0):' байт с битами красного-черного

R04$=CHR$(&HF):' байт с битами черного-красного

M1$=M1$+B0$+G0$+R40$+I1$: M1$=M1$+B0$+G0$+R0$+I1$ M1$=M1$+B0$+G0$+R0$+I1$ : M1$=M1$+B0$+G0$+R0$+I1$ M1$=M1$+B0$+G0$+R04$+I1$: M1$=M1$+B0$+G0$+R0$+I1$ M1$=M1$+B0$+G0$+R0$+I1$ : M1$=M1$+B0$+G0$+R0$+I1$




Содержание  Назад  Вперед