|
ИСХОДНИК ПРОГРАММЫ
. : Графические эффекты : .
Исходник программы, показывающей пример создания 15 различных графических эффектов. Программа написана Иваном Сиваком (Иванослав) - молодым 16-летним программистом Delphi из Чехии.
Список графических эффектов:
- Поднятый текст. Интересный способ придать тексту рельефный вид, нарисовав на экране более темный текст со смещением ниже и более светлый текст выше.
- Повернутый текст. Использование функции логического отступа шрифта для управления углом, под которым рисуется текст.
- Выбор изображения. Копирование прямоугольной части одного изображения в другое.
- Цветовая фильтрация пикселей. Удаление из изображения красных, зеленых или синих пикселей (оставив два других цвета для формирования голубого, пурпурного или желтого).
- Преобразование в оттенки серого. Заменяет цвета в каждом пикселе средневзвешенным цветом из трех. Взвешивание по умолчанию (0,2989 для красного, 0,5866 для зеленого и 0,1145 для синего) - это стандарт NTSC, который отражает кажущуюся чувствительность человеческого глаза к яркости (наименее чувствительный к зеленому и наиболее чувствительный к синему).
- Преобразование в черно-белое. Если средневзвешенное значение трех цветов в пикселе выше порогового значения, сделайте пиксель белым, в противном случае сделать его черным.
- Распределение пикселей. Понятия не имею, что это, но получается весьма интересная картина.
- Инверсия цвета. «Негатив» цветного изображения, вычитая каждое значение цвета из 255 для каждого пикселя.
- Изменение контрастности и яркости. Было замечено, что изображения имеют тенденцию становиться темнее по мере увеличения контраста, таким образом было принято решение, что нам также нужна регулировка яркости. Это привело к путешествию в мир представления цвета HSV (оттенок, насыщенность, значение). Это также иногда называют цветовой моделью HSB (оттенок, насыщенность, яркость). Регулировка яркости требует преобразования значения пикселя RGB в систему HSV, регулировки «V» (яркости) и обратного преобразования в RGB.
- Рельефное изображение. Преобразование каждого пикселя в константу шкалы серого плюс разницу между значением шкалы серого для этого пикселя и пикселя на три пикселя вверх и влево.
- Сортировка пикселей. Еще один пример, на который я не особо обратил внимание.
- Блоб деформация. Замена изображения множеством случайно расположенных эллипсов, окрашенных путем усреднения цветов некоторых пикселей внутри эллипса.
- Смешивание двух изображений. Простая замена каждого пикселя средневзвешенным значением двух соответствующих пикселей в исходных изображениях. Взвешивание может быть постоянным или переменным. Образцы вариаций здесь основаны на координате X, чтобы вызвать эффект постепенного появления или исчезновения.
- Деформация синусоидальной волны. Перемещение каждой функции синуса или косинуса на основе пикселя, примененного к координатам.
- Пузырьковые пятна для усиления деформации. Это один из эффектов заставки в программном пакете MSPlus. Здесь мы просто увеличиваем область вокруг нажатой точки изображения. Кажется, что пиксели перемещаются на расстояние, обратно пропорциональное их расстоянию от точки клика.
В целом, это впечатляющая работа, которую, как мне показалось, стоит передать на общее обозрение, спасибо, Иван, и удачи в ваших будущих начинаниях. Если вы решите стать профессиональным программистом, ваш успех будет весьма вероятным!
Просмотры: 5 004
Скачивания: 60
|
|
|
Скачать (655 Кб) Регистрация >> |
|