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

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

Построения
на плоскости (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#
Среда программирования: 
Microsoft Visual Studio Community C#

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 WindowsFormsApplication8
{
    public partial class Form1 : Form
    {
        private Bitmap b;//создаём bitmap и графику
        private Graphics g;
        SolidBrush bl = new SolidBrush(Color.Black);//определяем цвет ромба
        SolidBrush wh = new SolidBrush(Color.White);//определяем цвет креста-маски
 
 
        int k;
        float x = 0, w = 0;
        int angle = 45;
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
            timer1.Start();//в данной функции вызвается таймер
 
        }
        private void Draw()//функция изменения фигуры
        {
            b = new Bitmap(pictureBox1.Width, pictureBox1.Height);//создаём графику из bitmap
            Graphics g = Graphics.FromImage(b);
            g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;//для сглаживания
 
            g.FillRectangle(wh, 0, 0, 500, 500);//заливаем фон
            g.TranslateTransform((float)pictureBox1.Width / 2, (float)pictureBox1.Height / 2);//делим координатную сетку 
 
            g.RotateTransform(angle);//поворачиваем на заданный угол
 
            g.FillRectangle(bl, -119, -119, 238, 238);//отрисовываем ромб
            g.FillRectangle(wh, -120, x, 240, w);//отрисовываем крест-маску
            g.FillRectangle(wh, x, -120, w, 240);
 
            pictureBox1.BackgroundImage = b;
 
        }
 
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (angle < 405)//описываем вращение ромба
            {
                angle++;
            }
            if (angle >= 405) angle = 45;
 
 
            if (k < 40)//описываем изменение размера креста-маски
            {
                x -= 1;
                w += 2;
                k++;
            }
            if (k >= 40 && k <= 90)
            {
                x += 1;
                w -= 2;
                k++;
            }
            if (k > 90)
            {
                k = 0; w = 0; x = 0;
            }
 
            Draw();
 
 
 
            pictureBox1.BackgroundImage = b;
 
        }
    }
}