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

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

Построения
на плоскости (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 Яндекс.Метрика
Язык программирования: 
C/C++
Среда программирования: 
Visual Studio 2015

#include <SFML\Graphics.hpp>
#include <vector>
 
using namespace std;
 
const int winW = 350; // Ширина окна
const int winH = 300; // Высота окна
 
int main() {
	sf::ContextSettings set;
	set.antialiasingLevel = 8; // Уровень сглаживания
	sf::RenderWindow window (sf::VideoMode(winW, winH), "Lights", sf::Style::Default, set); //Создаем окно
 
	int radius = 75; // Радиус окружности
 
	sf::CircleShape c1 (radius, 40); // Создаем красную окружность
	c1.setPosition(50, 50);
	c1.setFillColor(sf::Color::Red);
 
	sf::CircleShape c2(radius, 40); // Создаем зеленую окружность
	c2.setFillColor(sf::Color::Green);
	c2.setPosition(50 + radius/2, 50);
 
	sf::CircleShape c3(radius, 40); // Создаем синюю окружность
	c3.setFillColor(sf::Color::Blue);
	c3.setPosition(50 + radius, 50);
 
	// Скорости для наших окружностей
	float speed1 = 1.3, speed2 = -1.3, speed3 = 1.3;
	while (1) {
		sf::Event event; // Для захвата событий
		while (window.pollEvent(event)) {
			// События закрытия окну по клику на крестик и по нажатию Esc
			if (event.type == sf::Event::Closed || event.type == sf::Event::KeyPressed && event.key.code == sf::Keyboard::Escape)
				return 0;
		}
		window.clear(); // Очищаем окно
 
 
		if (c1.getPosition().x >= 160 || c1.getPosition().x <= 30) // Если дошли до одной из границ, меняем направление
			speed1 *= -1;
 
		if (c2.getPosition().x >= 160 || c2.getPosition().x <= 30) // Если дошли до одной из границ, меняем направление
			speed2 *= -1;
 
		if (c3.getPosition().x >= 160 || c3.getPosition().x <= 30) // Если дошли до одной из границ, меняем направление
			speed3 *= -1;
 
		c1.move(sf::Vector2f(speed1, 0)); // Передвигаем каждую окружность
		c3.move(sf::Vector2f(speed3, 0));
		c2.move(sf::Vector2f(speed2, 0));
 
		window.draw(c1, sf::BlendAdd); // Отрисовываем окружности и устанавливаем смешивания цветов как сложение
		window.draw(c2, sf::BlendAdd);
		window.draw(c3, sf::BlendAdd);
 
		sf::sleep(sf::microseconds(8000)); // Чтобы анимация не проиходила слишком быстро, делаем паузу.
 
		window.display(); // Отображаем нарисованное
	}
 
	return 0;
}

Прикрепленный файлРазмер
Lights Release.zip63.92 кб
Lights.zip1.1 Мб