Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Пример закраски замкнутых фигур




Задание цвета

Параметр Цвет во всех методах определяет цвет линии (точки). Если он не задан, то для рисования используется значение свойства ForeColor объекта-хозяина метода.

Для явного задания значения цвета можно использовать:

1. VB-константу, задающую цвет

vbBlack Черный
vbRed Красный
vbGreen Зеленый
vbYellow Желтый
vbBlue Синий
vbMagenta Фиолетовый (неточный перевод)
vbCyan Голубой (неточный перевод)
vbWhite Белый

2. Функцию QBColor(n), где n - номер цвета, целое число от 0 то 15. Эта функция использует палитру из 16 цветов.

Число Цвет Число Цвет
  Black (черный)   Gray (серый)
  Blue (голубой)   Light Blue (светло-голубой)
  Green (зеленый)   Light Green
  Cyan (бирюзовый)   Light Cyan
  Red (красный)   Light Red
  Magenta (малиновый)   Light Magenta
  Yellow (желтый)   Light Yellow
  White (белый)   Bright White

 

3. Функцию RGB(n1,n2,n3). Эта функция использует палитру из 256 цветов. Параметр n1 - целое число от 0 до 255, представляет красную компоненту цвета. Параметр n2 - целое число от 0 до 255, представляет зеленую компоненту цвета. Параметр n3 - целое число от 0 до 255, представляет голубую компоненту цвета.

Значение RGB-цвета определяет относительную интенсивность красного, зеленого и голубого цвета для получения необходимого цвета, который будет отображаться на экране. Чем меньше положить каждой краски, тем темнее цвет получится. Если значение некоторого цвета больше 255, то он заменяется на 255.

Например, для стандартных цветов будут такие значения – RGB-компонент:

Цвет Red-значение Green-значение Blue-значение
Black (черный)      
Blue (голубой)      
Green (зеленый)      
Cyan (бирюзовый)      
Red (красный)      
Magenta (малиновый)      
Yellow (желтый)      
White (белый)      

 


16.3. Свойства объектов, влияющих на графические методы:

Свойство Смысл
DrawWidth Толщина линии
ForeColor Цвет линии
DrawStyle Стиль линии: 1 - Solid (сплошная), 2 – Dash (штрих-пунктирная), 3 – Dot (пунктирная) и т.п. Задается при толщине линий 1.
Fillstyle Стиль (узор) заливки и будет ли заливка
FillColor Цвет заливки
AutoRedraw Определяет, будут ли автоматически восстанавливаться графика и напечатанный текст, случайно стертые из-за того, что объект скрылся из виду
DrawMode Способ наложения краски. По умолчанию значение равно 13, когда краска плотно накладывается и предыдущая картинка через нее не просвечивает.

Управлять толщиной, цветом и другими атрибутами фигур можно следующим образом:

1. Настроить соответствующие свойства объекта в режиме проектирования. Эти свойства будут воздействовать сразу на все методы.

2. Задать изменение этих свойств в режиме работы программы. Бьет предыдущий.

3. Задать многие атрибуты рисуемой фигуры можно в самом методе. Бьет оба предыдущих.

Пример задания стилей, толщины и цвета рисуемых линий

Private Sub Command1_Click() 'точка и окружность - тонкие, черные PSet (300, 1000) Circle (1000, 1000), 500 'изменение толщины линий DrawWidth = 20 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'точка и окружность - толстые и цветные PSet (1800, 1000) Circle (2800, 1000), 500 End Sub
Private Sub Command1_Click() 'линия - тонкая, сплошная, черная Line (300, 500)-(4700, 500) 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'изменение стиля линий DrawStyle = 2 'линия-тонкая, пунктирная, желтая Line (300, 1000)-(4700, 1000) 'изменение толщины линий DrawWidth = 20 'линия-толстая, сплошная, красная Line (300,1500)-(4700,1500),vbRed End Sub

 

Private Sub Command1_Click() 'прямоугольник окантован черной линией Line (300, 500)-(4700, 1000),,B 'изменение цвета линий ForeColor = RGB(230, 250, 100) 'прямоугольник залит желтым цветом Line (300, 1500)-(4700, 2000),,BF 'изменение цвета заливки FillColor = vbGreen 'задание стиля заливки FillStyle = 7 Line (300, 2500)-(4700, 3000),, B End Sub

 

Пример. Нарисовать «трубу» с помощью метода Circle в графическом окне размером 5000 х 3000.

Private Sub Command1_Click() Dim x As Integer x = 500 Do Until x > 4450 Picture1.Circle(x,1500),500,RGB(255,0,0) x = x + 50 Loop End Sub
Private Sub Command1_Click() Dim x As Integer Picture1.Cls x = 500 y = 2500 Do Until x > 4450 Picture1.Circle (x, y),500,RGB(255,0,0) x = x + 50 y = y – 25 ’х умножить на Ö2/2 For i = 1 To 100000 Next Loop End Sub

 

Пример. Нарисовать «компакт-диск» или «летающую тарелку». Радиус самого маленького круга взять 500, самого большого – во все графическое окно, радиусы соседних окружностей различаются на 10 – 30 твипов, цвет – желтый, коэффициент сжатия окружности взять меньше 1 – получится эллипс, сжатый по вертикали. Внутреннюю и внешнюю обводку сделать другого цвета.

Private Sub Command1_Click() Dim r As Integer Picture1.Cls x = 2500 y = 1500 r = 500 Do Until r > 1500 Picture1.Circle(x,y),r,RGB(255,255,0),,,0.4 r = r + 30 For i = 1 To 100000 Next Loop End Sub
Private Sub Command1_Click() Dim r As Integer Picture1.Cls x = 2500 y = 1500 r = 500 Picture1.ForeColor = RGB(155, 155, 0) Do Until r > 1470 Picture1.Circle (x, y),r,,,,0.4 r = r + 30 For i = 1 To 100000 Next Picture1.ForeColor = RGB(255, 255, 0) Loop Picture1.Circle(x,y),1500,RGB(155,155,0),,, 0.4 End Sub

 

Пример. Разлиновать графическое окно в клетку.

Private Sub Command1_Click() Picture1.Cls X1 = 500 Y1 = 0 X2 = 500 Y2 = 3000 Do Until X2 > 4500 Picture1.Line (X1, Y1)-(X2, Y2), vbWhite X2 = X2 + 500 X1 = X2 Loop X1 = 0 Y1 = 500 X2 = 5000 Y2 = 500 Do Until Y2 > 2500 Picture1.Line (X1, Y1)-(X2, Y2), vbWhite Y2 = Y2 + 500 Y1 = Y2 Loop End Sub

 




Поделиться с друзьями:


Дата добавления: 2014-11-16; Просмотров: 418; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.