TURBO PASCAL |
Новости |
Практическое задание N 1. 55
1. Составить
процедуру рисования N - угольной звезды.
В параметры процедуры включить число
лучей звезды, радиусы
вписанной и описанной окружностей,
цвет линий и координаты центра звезды.
Перемещать две звезды разного цвета в
пределах экрана случайным образом.
2. Составить процедуру рисования N -
угольной
звезды, где N=
3, 5,
7, ... Операторы рисования имеют вид:
M:=N
div 2; Moveto(x[1],y[1]); For i:=1 to N do begin j:=(M*i) mod N + 1;
LineTo(x[j],y[j])
end;
Перемещать две звезды
разного цвета в пределах экрана.
Толщину и форму (стиль)
линий отрезков прямых,
прямоугольников, окружностей, эллипсов можно задать оператором
SetLineStyle(F, P, T);
Здесь F -
форма линии из стандартного набора BGI:
F=0 - сплошная,
F=1 - пунктирная,
F=2 - штрих-пунктирная,
F=3 - штриховая.
F=4 - форма линии задается параметром Р. При
F<4 значение Р игнорируется.
Параметры F, P, T типа Word.
Стиль линии Р
- число, двоичное
представление которого отображает
заполнение линии длиной 16 пикселов.
Если разряд числа равен 1,
то пиксел высвечивается,
0 -
не высвечивается. Удобно
использовать шестнадцатеричные числа.
Например:
P
= $35F1 = 0 0 1 1 0 1 0 1 1 1 1 1 0 0 0 1 ( двоичное )
отобразит
стиль:
Можно использовать десятичную форму
записи значения параметра "Р",
где 0<= P <= 65535= 216-1 .
T - толщина линии может
принимать два значения: T= 1 -
тонкая (1 пиксел), T=
3 - толстая (3 пиксела). Например, операторы: SetLineStyle(4, $5555, 3); Line(x1, y1, x2, y2); определяют толстую мелким пунктиром линию. Практическое задание N 1. 55
1. Вывести на
экран горизонтальные толстые линии с
двоичным представлением: 1111000001100000,
1111000011110000,
0111101111011110, 1100110011001100,
1001100110011001,
1111100011111000.
2. Вывести на
экран вертикальные толстые линии с
двоичным представлением: 0101010101010101,
1100011000110001, 1111110011111100, 0111011101110111,
1110001110001110,
1111000000001111.
3. Вывести на
экран линии разных форм,
заданных параметром РN = PN-1 + 2 * N, где P0= 1; N= 1, . . , 150 . Линии
располагать вертикально.
4. Вывода на
экран линий разных форм,
заданных параметром РN = PN-1 + 2N,
где P0= 1; N= 1, . . , 15 . Линии
располагать горизонтально.
5. Нарисовать
расходящийся из центра экрана по спирали
ромбический лабиринт шириной 6 пикселов из
отрезков наклонных прямых.
Очищать экран и менять толщину и форму
линии F= 0, . . , 3.
6. Нарисовать
расходящийся из центра экрана по спирали
прямоугольный лабиринт шириной 5 пикселов
из отрезков вертикальных и горизонтальных
прямых. Очищать
экран и менять толщину и форму линии.
Применяя к исходным стилям линий
пользователя логические операции,
можно получать новые стили линий.
Например:
P3 = P1 and P2
- линии из совпадающих
единичных битов.
P3 = P1 or P2 - добавление единичных битов.
P3 = P1 xor P2
- обнуление совпадающих
значений битов.
P3 = not P2
-
изменение значений битов на
противоположные.
Таблица результатов выполнения
логической операции "xor" над битами.
( Таблица результатов выполнения
бит "A" операция
бит "B" результат
логических
операций "or" и "and"
над
битами приведена на стр. .
)
1 xor
1
0
1 xor
0
1
Результат операции "A xor B" равен
0 xor
0
0 единице
при различных значениях битов 0 xor 1 1 "A" и "B", иначе результат равен нулю. |
(с) Все права защищены. По всем интересующим вопросам прошу писать электронный адрес |