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

Вход на сайт

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

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

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

Сейчас проверила нашла причину не запускания // Создание контекста воспроизведения OpenGL и привязка его к панели на форме OpenGLControl1:=TOpenGLControl.Create(Self); with OpenGLControl1 do begin Name:='OpenGLControl1'; //вот тут...
Ну..кажется что то пошло не так http://pp.usera...
Комментарии на английском переведите на русский. Дополните код комментариями, чтоб было понятно как работает алгоритм
Пример, к которому вы оставили комментарий строит именно то самое изображение на языке с#, которое вам необходимо. Отличается только цветовая палитра.

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

Рейтинг@Mail.ru

Linux

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

Задача : построить (растеризовать) эллипс, зная координаты его центра и длины меньшей и большей полуосей a и b соответственно.
Суть алгоритма : использование модифицированного алгоритма Брезенхема для построение окружности . Как и в оригинальном алгоритме Брезенхема, выбор ближайшей точки основан на анализе знаков управляющих
В поля "X" и "Y" вводятся координаты центра окружности, в поля "a" и "b" — длины соответствующих полуосей.

Скриншот к примеру
Среда программирования: 
Eclipse Mars.2(4.5.2)

Задача: определить, принадлежит ли точка многоугольнику.
Для запуска приложения на Linux достаточно открыть файл is_in_polygon(см. архив во вложении), предварительно сделав его исполняемым(chmod +x либо Свойства-Права-Разрешить исполнять как программу). После запуска появится белое окно, в заголовке которого отображаются координаты последнего нажатия левой кнопки мыши(начальные значения x = 0, y = 0). По щелчку левой кнопки мыши в произвольном месте окна на месте нажатия рисуется точка и проводится линия из предыдущей точки в новую(если указаны хотя бы 2 точки), таким образом можно построить любой многоугольник. При нажатии клавиши Enter завершается построение многоугольника(многоугольник нельзя будет больше изменить), последняя точка соединяется с первой.

Скриншот к примеру
Среда программирования: 
Eclipse Mars.2(4.5.2)
Статья по теме: 

Задача: построить алгебраический фрактал — биоморф. Биоморф, изображенный на скриншоте, получен путем многократного возведения в куб числа z = 0.01 • (x + iy) по формуле
z(n) = z(n - 1)3 + constant,
где x и y пробегают множество всех точек, принадлежащих окну, constant = 1.07 + 0.0001 • i.

Скриншот к примеру
Среда программирования: 
Eclipse Mars.2(4.5.2)

Задача: Используя алгоритм триангуляции разбить невыпуклый многоугольник на треугольники. Закрашивать треугольники, полученные при разбиении, через один. Первый закрашиваем, второй - нет и т.д.
Алгоритм триангуляции, рассматриваемый в данной статье, основывается на том, что n-угольник может быть разбит на n-2 треугольника путем проведения n-3 хорд. Для удобства реализации дополнительно были введены классы List(кольцевой двусвязный список) и Node(узел списка).

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

Детали фрактала

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

Принцип построения данного фрактала используется в проектировании микросхем.
Если рисовать толстые буквы Н, то получается дерево Мандельброта.
Принцип построения Н-фрактала очень похож на пострение Т-фрактала.

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

Хотелось бы объяснить использование OpenGL в Qt для вращения трехмерной фигуры.
В данном примере приведен измененный код из статьи "Введение в OpenGL на Qt/C++" для отрисовки разноцветного икосаэдра.
Цвета задаются рандомно, а сама отрисовка производится через встроенные функции отрисовки по массивам координат.

Скриншот к примеру
Среда программирования: 
HTML 5 + JavaScript

Задача - построить минимальную выпуклую оболочку для множества точек на плоскости.