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

Вход на сайт

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

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

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

Спасибо за статью. Я не Ваш студент. Но мне она помогла написать функцию для Канторова множества на Python для черепашки: import turtle def kanter(x, y, d):     if d > 1:         turtle...
Как реализовать в данном примере границы расчёта?

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

Рейтинг@Mail.ru Яндекс.Метрика
Парень имеет парня смотри на сайте mega-xxx.biz/video/gays-video.html
Язык программирования: 
C#
Среда программирования: 
Visual Studio 2015

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Windows.Forms;
 
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        Bitmap buf; //Буфер для прорисовки промежуточных кадров
        Graphics _graphic; //Граффика
        SolidBrush background = new SolidBrush (Color.White); //Кисть для заливки фона
        SolidBrush figure = new SolidBrush(Color.Black); //Кисть для заливки фигур
 
        bool rotate = false;
 
        // Параметры скорости движения фигур
        int rotspeed = 3;
        int movespeed = 4;
 
        //Точки квадрата
        Point[] sq = { new Point(100, 100), new Point(100, 250), new Point(100, 400), new Point(250, 400),
                       new Point (400, 400), new Point (400, 250), new Point (400,100), new Point (250, 100)};
        public Form1()
        {
            InitializeComponent();
 
            buf = new Bitmap(MainBox.Width, MainBox.Height);//Определение буфера
            _graphic = Graphics.FromImage(buf);//Определение графики из буфера
            _graphic.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;//Режим размытия граффики
            MainBox.BackColor = background.Color;//Цвет фона
            timer1.Enabled = true;//Включение таймера
 
        }
 
        //Кнопка выхода
        private void button1_Click_1(object sender, EventArgs e)
        {
            Application.Exit();
        }
 
        //Функция таймера выполняется каждые 5 мс
        private void timer1_Tick(object sender, EventArgs e)
        {
 
            if (!rotate)
            {
                sq[0].Y += rotspeed * 2;
                sq[2].X += rotspeed * 2;
                sq[4].Y -= rotspeed * 2;
                sq[6].X -= rotspeed * 2;
 
                sq[1].X += rotspeed; sq[1].Y += rotspeed;
                sq[3].X += rotspeed; sq[3].Y -= rotspeed;
                sq[5].X -= rotspeed; sq[5].Y -= rotspeed;
                sq[7].X -= rotspeed; sq[7].Y += rotspeed;
 
                if (sq[0].Y >= 250) {
                    rotate = true;
                }  
            }
            else //Вращение квадрата
            {
                sq[1].X -= movespeed; sq[1].Y += movespeed;
                sq[3].X += movespeed; sq[3].Y += movespeed;
                sq[5].X += movespeed; sq[5].Y -= movespeed;
                sq[7].X -= movespeed; sq[7].Y -= movespeed;
 
                if (sq[1].X <= 100)  {
                    rotate = false;
                    sq[0].X = 100; sq[0].Y = 100;
                    sq[1].X = 100; sq[1].Y = 250;
                    sq[2].X = 100; sq[2].Y = 400;
                    sq[3].X = 250; sq[3].Y = 400;
                    sq[4].X = 400; sq[4].Y = 400;
                    sq[5].X = 400; sq[5].Y = 250;
                    sq[6].X = 400; sq[6].Y = 100;
                    sq[7].X = 250; sq[7].Y = 100;
 
                }
            }
 
            //Заливка фона и прорисовка фигуры
            _graphic.Clear(background.Color);
            _graphic.FillPolygon(figure, sq);
 
            MainBox.Image = buf;
        }
    }
 
}

Прикрепленный файлРазмер
Scherbak_Squer_2.rar93.25 кб