Уроки, алгоритмы, программы, примеры

Вход на сайт

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

torrvic, возможно, Вам нужно добавить -lGLU
Извините за тупой вопрос. У меня при сборке Вашего примера выходит ошибка: "undefined reference to gluLookAt". Не могу найти в какой библиотеке находится эта функция. У меня задано: -lGL -lglut ... Искал в /usr/lib таким образом: nm lib*so* | grep...
Здравствуйте. Спасибо за проект. У меня вопрос, по какой причине определение принадлежности точки многоугольнику работает некорректно, если координаты из больших чисел состоят, например: int[] vertex = new int[] {...
Сейчас проверила нашла причину не запускания // Создание контекста воспроизведения OpenGL и привязка его к панели на форме OpenGLControl1:=TOpenGLControl.Create(Self); with OpenGLControl1 do begin Name:='OpenGLControl1'; //вот тут...
Ну..кажется что то пошло не так http://pp.usera...

Счетчики и рейтинг

Рейтинг@Mail.ru

Windows

Скриншот к примеру
Среда программирования: 
NetBeans IDE 8.2

Пример заливки с "жесткостью".
Использование:
В форме FillToleranceExample нажмите на единственную кнопку для генерации тестовой сцены.
В единственном текстовом поле укажите параметр "жесткости" от 0 до 1, затем нажимайте мышью на панели в разных участках сцены. Для очистки сцены повторно нажмите на кнопку.

Скриншот к примеру
Среда программирования: 
Любая

Задача: Построить окружность, используя алгоритм Брезенхема.
Алгоритм: Строим четверть окружности, и достраиваем остальные симметрично. На каждой итерации цикла выбираем одну из трёх возможных точек(сравниваем расстояние от центра до выбранной точки с радиусом окружности).

Скриншот к примеру
Среда программирования: 
Любая

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

Скриншот к примеру
Среда программирования: 
Sublime Text
Статья по теме: 

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

Скриншот к примеру
Среда программирования: 
MS Visual Studio 2015

Задача: построить эллипс, зная координаты центра x и y, длины большой и малой полуосей a и b.

Алгоритм: используется модифицированный алгоритм Брезенхема генерации окружности. Как и в оригинальном алгоритме, выбор следующей точки основан на вычислении значения управляющей переменной delta.
В поля "X" и "Y" вводятся координаты центра эллипса, в "A" и "B" - длины большой и малой полуосей.

Скриншот к примеру
Среда программирования: 
Любая

Провести прямую линию между двумя точками, заданными своими координатами. Использовать растровый алгоритм Брезенхэма.

Скриншот к примеру
Среда программирования: 
Lazarus 1.2.4

Задача: зарисовать (заполнить) окружность, зная координаты её центра и радиус.
Суть алгоритма: используя свойства вписанной в квадрата окружности, можно утверждать, что все точки окружности и круга, ограниченного этой окружностью, лежат в квадрате,описанном вокруг данной окружности. Перебирая все точки двойным циклом (по OX и OY) и проверяя их удовлетворение неравенству (X-текущийX)2+(Y-текущийY)2≤Радиус2 строится сама окружность и эта же окружность заполняется

Скриншот к примеру
Среда программирования: 
Visual Studio 2015
Статья по теме: 

В этом примере показана элементарная спрайтовая анимация на примере птички из Angry Birds. Меняются три спрайта птички и постепенно увеличивается скорость смены этих спрайтов.
В imageList1 добавляются спрайты.
imageList1.Draw(Graphics, Point, int): Graphics - задать графику, Point - точка(левый верхний угол спрайта), int - индекс спрайта в imageList1.
timer1.Interval = timer1.Interval - 10; уменьшаем интервал таймера на 10.