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

Вход на сайт

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

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

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

Спасибо за реализацию, она действительно быстрая. Но не все линии отрисовывает в нужную сторону... Необходимо добавить проверку для случая X-линии if(y1 "<" y0) grad=-grad; и аналогично для Y-линии if(x1 "<" x0) grad=-grad; P.S. На...
Отличные уроки(учу GL по ним), только в renderScene нужно добавить очистку буфера цвета и буфера глубины. При изменении размеров треугольники размножаются)
как исправить это , сделал все по инструкции
Timer1 - выдает ошибку. Использовал IdleTimer1, работает! unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls, OpenGLContext, GL, GLU; type { TForm1 } TForm1 =...
в коде присутствуют ошибки! // Считываем координаты procedure TForm1.getCoords(Sender: TObject); var j1:longint; begin n:= StrToInt(Edit2.Text); //число точек s1:=Edit1.Text; s2:=''; i := 1; j:=1; k:=0...

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

Яндекс.Метрика Рейтинг@Mail.ru
Язык программирования: 
Java
Среда программирования: 
Processing

//массив объектов класса
myCircles[] arrCircles = new myCircles[200];
 
void setup() {
  //настраиваем окно и отображение объектов
  size(400, 400);
  smooth();
  noStroke();
  fill(255);
 
  //заполняем массив объектами и задаем им координаты, начиная с центра окна и двигаясь
  //дальше поспирали
  for(int i=0; i<arrCircles.length; i++) {
    float x = width/2 + cos(i/2.0) * i;
    float y = height/2 + sin(i/2.0) * i;
    arrCircles[i] = new myCircles(x, y, 0.05 + (i/1000.0) );
  }
}
 
void draw() {
  background(0, 0, 0);
 
  //отрисовываем каждый объект через функцию pulse()
  for(int i=0; i<arrCircles.length; i++) {
    arrCircles[i].pulse();
  }
}
 
//напишем класс, который будет создавать пульсирующие объекты-круги
class myCircles {
  //переменные, в которых будут храниться координаты
  float xCoord;
  float yCoord;
 
  //переменные в которых будет задаваться скорость пульсации
  float t;
  float speed;
 
  //конструктор
  myCircles(float tx, float ty, float tspeed) {
    xCoord = tx;
    yCoord = ty;
    t = 0;
    speed = tspeed;
  }
 
  //функция пульсации
  void pulse() {
    //конвертируем значение sin(t) из промежутка -1:1 в соответственное значение в промежутке
    //10:15
    float size = map(sin(t), -1, 1, 10, 15);
    //рисуем эллипсы
    ellipse(xCoord, yCoord, size, size);
    //сдвигаем его на значение переменной speed
    t = t + speed;
  }  
}

Прикрепленный файлРазмер
menshykov_demoscene_2.pde_.zip1012 байтов