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

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

Построения
на плоскости (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 Яндекс.Метрика
Среда программирования: 
PascalABC.NET
Установка среды :

Скачиваем программу PascalABC.NET

Установка стандартная и не представляет трудностей ...

Запускаем установочный файл:

Читаем и принимаем лицензионное соглашение , нажав "Принимаю" :

Выберем тип установки "Обычнная" и жмём "далее >" :

Выберем место на компьютере , куда установить программу и жмём "далее >":

Выберем путь к рабочей папке (в эту папку будут сохраняться ваши проекты , так же в ней имеется папка с образцами программ - "Samples" ) , жмём "Установить":

Установка завершена , приступим к программированию.

Отрисовка простейшего изображения:

Научимся рисовать простейшие фигуры по координатам (без преобразования).

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

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

Формат подключения библиотеки:

uses GraphABC;

Начало координат графического окна находится в верхнем левом углу. Ось x направлена вправо, а ось y - вниз. Координаты исчисляются в пикселях.
Все команды библиотеки GraphABC являются подпрограммами и описаны в виде процедур и функций. Для того, что бы команда выполнилась необходимо указать команду и задать значения параметрам.

Команды библиотеки GraphABC , используемые в нашей программе:

Line(x1, y1, x2, y2); – Проводит отрезок от точки (x1, y1) до точки (x2, y2); (использовали для отрисовки крыши)

Rectangle(x1,y1,x2,y2); - Рисует контур прямоугольника со сторонами параллельными сторонам экрана. Точки с координатами (x1, y1) и (x2, y2) определяют диагональные вершины прямоугольника. (использовали для отрисовки основания дома)

Circle(x,y, r); - Рисует окружность с центром в точке с координатами (x,y) и радиусом r. (использовали для отрисовки окна на крыше)

SetPenColor(color); - Задает цвет рисования линий.

SetBrushColor(color); - Устанавливает цвет кисти, задаваемый параметром color . (использовали для заливки окон , двери и основания дома)

FloodFill(x,y,color); - Заливает область одного цвета цветом color, начиная с точки (x,y). (использовали для заливки крыши)

Код нашей программы:

uses GraphABC;
begin
 
  SetWindowSize(400,400); // размер окна
 
  setpencolor(clFirebrick); //  цвет кисти
 
  setbrushcolor(clLightGray);// цвет заливки
  Rectangle(150,150,250,250); // основание
 
  setbrushcolor(clBurlywood);// цвет заливки
  Rectangle(220,190,245,250); // дверь
 
 
  Line(150,150,200,75); // крыша
  Line(250,150,200,75); // крыша
 
  setbrushcolor(clBlue);// цвет заливки
  Circle(200,130,15); // окно 
  Rectangle(170,170,200,200); // окно 
  Rectangle(225,194,240,213); // окно
 
  FloodFill(222,111,clBeige); // цвет заливки
 
end.

Результат:

Подробнее на сайте разработчика