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

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

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

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

У меня проблема вот с этим: gl.Clear(OpenGL.GL_COLOR_BUFFER_BIT | OpenGL.GL_DEPTH_BUFFER_BIT);. Вылезает ошибка: CS1061 "object" не содержит определения "GL_COLOR_BUFFER_BIT", и не удалось найти доступный метод расширения "GL_COLOR_BUFFER_BIT",...
Большое спасибо. Единственный код который прошел без каких либо ошибок. Ура!!!
Скажите пожалуйста, подскажите алгоритм по которому по заданным точкам можно определить тип многогранника, скажем это куб или прямоугольный параллелепипед. Нашел теорию по этим фигурам: https://www.mat... https://www.mat... Акцентировать внимание...
Всем у кого не работает. файл wizard.script Ещё одно упоминание Glut32 в строке "if (!VerifyLibFile(dir_nomacro_lib, _T("glut32"), _T("GLUT's"))) return false;" меняем на "if (!VerifyLibFile(dir_nomacro_lib, _T("freeglut"), _T("GLUT's"))) return...
Не получается, емаё

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

Рейтинг@Mail.ru Яндекс.Метрика

Windows

Скриншот к примеру
Среда программирования: 
Borland Delphi 7.0

Для построения классического фракатал Дракон Хартера возьмем отрезок, на втором шаге повернем его на 90 вокруг одной из вершин и добавим новый полученный отрезок к исходному. Получим уголок из двух отрезков. Повторим описанную процедуру. Повернем уголок на 90о вокруг вершины и добавим полученную ломаную к исходной.

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

Для построения изображения нажмите кнопку "Button1"

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

Определить принадлежит ли точка выпуклому многогольнику, в данном случае - пятиугольнику. Алгоритм основан на проверке положения точки относительно каждой из сторон пятиугольника.

Скриншот к примеру
Среда программирования: 
Embarcadero Delphi XE ver. 15

В программе используется алгоритм удаления невидимых граней - алгоритм z-буфера. Рисуем два тела, одно тело частично закрывает другое. В конкретном примере это куб позади куба.
Для построения сцены необходимо щелкнуть на форме левой кнопкой мыши. Невидимые грани куба перекрываются видимыми, в результате получаем визуально объемную картинку.

Скриншот к примеру
Среда программирования: 
Code::Blocks 10.05

Одним из важнейших алгоритмов растеризации является алгоритм растеризации треугольника (заполнения треугольника), т.к. в большинстве моделей построения трехмерных объектов последние состоят именно из треугольников. В некоторых статьях этот алгоритм называется алгоритм рисования треугольника. Схематично алгоритм можно описать следующим образом:

Скриншот к примеру
Среда программирования: 
Code::Blocks 10.05
Статья по теме: 

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

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

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

Скриншот к примеру
Среда программирования: 
Borland Delphi 7.0
Статья по теме: 

В "окне" программы мы видим сосуд наполненный "жидкостью".В нижней части "окна" расположены задаваемые величины и три кнопки: "Go"(начало), "Restart"(перезапуск программы), "Exit"(выход).Для запуска программы необходимо ввести значения в диапазоне которые указаны над каждым окном и нажать кнопку "Go",что бы поменять значения достаточно их ввести и нажать кнопку "Restart".