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

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

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

В этом примере показана элементарная спрайтовая анимация на примере птички из Angry Birds. Меняются три спрайта птички и постепенно увеличивается скорость смены этих спрайтов.
В imageList1 добавляются спрайты.
imageList1.Draw(Graphics, Point, int): Graphics - задать графику, Point - точка(левый верхний угол спрайта), int - индекс спрайта в imageList1.
timer1.Interval = timer1.Interval - 10; уменьшаем интервал таймера на 10.

Код программы: 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Sprite
{
    public partial class Form1 : Form
    {
        Graphics g;
        Bitmap buf;
        public Form1()
        {
            InitializeComponent();
            buf = new Bitmap(pictureBox1.Width, pictureBox1.Height);//Определение буфера
            g = Graphics.FromImage(buf);//Определение графики из буфера
            g.FillRectangle(new SolidBrush(Color.White), 0, 0, pictureBox1.Width, pictureBox1.Height);
            timer1.Enabled = true;
        }
 
        int stage = 0;
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (stage < 1)
            {
                imageList1.Draw(g, new Point(5, 0), 0);
                stage++;
            }
            else if (stage < 2)
            {
                imageList1.Draw(g, new Point(5, 2), 1);
                stage++;
            }
            else if (stage < 3)
            {
                imageList1.Draw(g, new Point(0, 5), 2);
                stage++;
            }
            if (stage == 3)
			{
				stage = 0;
				timer1.Interval = timer1.Interval - 10;
			} 
            if (timer1.Interval <= 10) timer1.Interval = 600;
            pictureBox1.Image = buf;
        }
    }
}