Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 64748
Имитационное мо... 58949
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

Пользователей: 13,101
новичок: Limbo67
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование процесса обеспечивающего надежность функционирования АСУ Т...
Расчет размера дохода на одного человека в Turbo Pascal
Моделирование ЭВМ на GPSS (три класса заданий) + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
АЛГОРИТМЫ РАСТРОВОЙ ГРАФИКИ. Особенности растровой графики


Среди многообразия возможностей, предоставляемых современными вычислительными средствами, компьютерная графика, ориентированная на пространственно-образное мышление человека, занимает особое место. Ее методы и средства компьютерной графики представляют собой эффективный инструмент при выполнении проектно-конструкторских, научно-исследовательских, оформительских работ, а также всех случаев визуализации различных объектов. При этом наблюдается взаимное повышение возможностей, как человека, владеющего эффективным инструментом, так и компьютера, обогащенного новыми возможностями. В этом смысле значительную роль играет разработка соответствующих алгоритмов, отличающихся качественными параметрами по быстродействию, объемам используемой памяти и спектру предоставляемых возможностей.
Основой компьютерной графики являются методы и алгоритмы растровой графики, которые позволяют строить любые изображения на растровых дисплеях, использующих прямоугольную матрицу точек (пикселей). Каждый пиксель может изображаться некоторым цветом, выбранным из имеющейся палитры цветов. Для реализации любого изображения в компьютере имеется видеоадаптер, хранящий в своей видеопамяти изображение и обеспечивающий регенерацию изображения на экране со скоростью порядка 50 раз в секунду. Размер палитры определяется объемом видеопамяти, отводимой под один пиксель, и зависит от типа видеоадаптера. Для ПЭВМ типа IBM существуют несколько видеоадаптеров, отличающихся возможностями, своим устройством и принципами работы с ними: Hercules, CGA, EGA, VGA, SVGA. Почти все указанные адаптеры поддерживают несколько режимов работы, которые отличаются друг от друга размерами матрицы пикселей (разрешающей способностью изображений) и размером палитры. Как правило, развитие видеоадаптеров строится по принципу совместимости с предыдущими моделями, однако при этом могут иметь место некоторые особенности, нарушающие это положение.
Формирование изображения базируется на работе с отдельными пикселями, однако пользователю может предоставляться достаточно широкий набор библиотечных примитивов, которые повышают эффективность работы за счет операций с графическими объектами. Такими объектами могут выступать линии, дуги, окружности, сложные кривые, сплошные объекты, шрифты, картинки и т.д. Как правило, каждый язык программирования имеет свою графическую библиотеку, обеспечивающую работу с элементами и группами графических объектов, которая должна при этом поддерживать работу с основными типами видеоадаптеров.
Особенности растровой графики связаны с тем, что обычные изображения, с которыми сталкивается человек в своей деятельности (чертежи, графики, карты, художественные картины и т.п.), реализованы на плоскости, состоящей из бесконечного набора точек. Экран же растрового дисплея представляется матрицей дискретных элементов, имеющих конкретные физические размеры. При этом число их существенно ограничено. Поэтому нельзя провести точную линию из одной точки в другую, а можно выполнить только аппроксимацию этой линии с отображением ее на дискретной матрице.
Для большей определенности следует ввести понятие дискретной плоскости, имеющей целочисленные координаты. Такую плоскость также называют целочисленной решеткой, растровой плоскостью или растром. Эта решетка представляется квадратной сеткой с шагом 1. Узлы целочисленной решетки являются центрами соответствующих квадратных ячеек сетки. Таким образом, узлы растра окружены "единичными" квадратными окрестностями "радиуса" 1/2. При обращении к точке растра с координатами (i,j) выполняется инициализация единичного квадрата с закрашиванием его соответствующим цветом.
Отображение любого объекта на целочисленную решетку называется разложением его в растр или просто растровым представлением. Естественно, это разложение лишь приблизительно представляет изображаемый объект. Отображение является неоднозначным ввиду зависимости его от алгоритмов аппроксимации, а они, в свою очередь, - от критериев определения точек растра. В связи с этим возникает задача выбора оптимального алгоритма по соответствующему критерию.
Опубликовал Kest March 29 2011 14:29:48 · 0 Комментариев · 7380 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Delphi 7: Для про...
Программирование ...
Технология .Net в VB
MP3 Архив v.2.0
Простой текстовый...
Философия C++. Пр...
Visual Basic Script
Искусство програм...
База для Allsubmi...
Prolog Interprete...
PolyFlow
PHP: обучение на ...
Пример работы с р...
THttpScan v4.1
Progressbar
FilesInfo
DCAVI
Удаление своего EXE
Форма в форме
Самоучитель C++

Топ загрузок
Приложение Клие... 100501
Delphi 7 Enterp... 89120
Converter AMR<-... 20088
GPSS World Stud... 14218
Borland C++Buil... 12399
Borland Delphi ... 8809
Turbo Pascal fo... 7069
Калькулятор [Ис... 5027
Visual Studio 2... 5012
FreeSMS v1.3.1 3551
Случайные статьи
Canon 1210 картридж
В версии Android SDK
Активация
Базовые файловые с...
9.6. Дополнительна...
Бизнес-процессы
Свободныеадреса в ...
NTLMvI при возможн...
Определение языка ...
functor(T,F,N)
Теперь давайте пос...
• Computer Configu...
Настройка Akismet
Основные недостатк...
1.4.2. Адаптеры да...
Работа над языком ...
Проектирование
Процедура проверки...
Форматирование в W...
SIMULATE (МОДЕЛИРО...
Audit System Event...
Как пользоваться м...
На что влияет кома...
Аэродинамическое м...
ДЫРЫ В ЧАТАХ
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?