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

Вход на сайт

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

Построения
на плоскости (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

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

Одним из тех объектов, которые удобно строить при помощи вероятностных распределений является папоротник.

Основная заключается в том, чтобы, зафиксировав какую-либо начальную точку, затем циклически совершать афинное преобразование системы координат, в которой строится точка.То есть, если на определённом шаге цикла имеется точка А с координатами (х0,y0), то при следующей итерации цикла изображается точка В, с координатами:
( а*х0+в*y0+с , d*х0+e*y0+f ).

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

Для прорисовки фрактала следует нажать кнопку "Fractal"
В функцию Draw_Star передаем следующие параметры:
x, y - центр первого построенного пятиугольника
r - радиус окружности, описанной вокруг пятиугольника
angle - угол поворота
d - количество уровней

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

Одним из фракталов множества Мандельброта является «паук».
Рассматривается множество таких a, которые стремятся к бесконечности при итерировании вида:

z0=c0=a;

z'=z2+c;

c'=c/2+z';

Для построения фрактала будем использовать следующие формулы:

z.X=(z1.X)2-(z1.Y)2+c.X;

z.Y=2*z1.X*z1.Y+c.Y;

c.X=c1.X/2+z.X;

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

В данном примере строится многоугольник по количеству сторон n, координатам центра многоугольника и расстоянию R от центра многоугольника до его стороны. Все эти данные вводятся пользователем и начинают обрабатываться по нажатию кнопки "Построить". Программа позволяет рисовать на одной форме многоугольники с различными параметрами.

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

Определяем точку пресечения двух отрезков, используя свойства векторного произведения (функции areCrossing и vector_mult). Далее, если функция areCrossing возвращает истину, значит отрезки пересекаются, тогда мы начинаем построение уравнений прямых, соответствующих данным отрезкам (функция LineEquation), и находим точку пересечения отрезков (функция CrossingPoint). Иначе (если функция areCrossing возвращает ложь, т.е. отрезки не пересекаются), выводим сообщение: "Отрезки не пересекаются!".

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

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

По нажатию на кнопку "Draw" начинается построение.

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

Построение вложенных спиральных квадратов. Аналогично примеру на Pascal, на форме находится кнопка, по нажатию на которую, сначала рассчитываются координаты, начиная с правой нижней точки, двигаясь по часовой стрелке, заканчивая верхней правой точкой. Координаты первой точки рассчитываются по формуле:
x = (int)(x0 + c * Math.Cos(b + 1 * Math.PI / 4));
y = (int)(y0 + c * Math.Sin(b + 1 * Math.PI / 4))