Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
user7824
1 / 1 / 0
Регистрация: 24.07.2014
Сообщений: 9
#1

Задача моделирования и управление движением - C#

27.07.2014, 12:44. Просмотров 599. Ответов 6
Метки нет (Все метки)

Суть в том что, клетка находится изначально в любой клетке(например в верхней) и пользователь должен управлять ей (как я понял пользователь сначала выбирает направление по часовой или против, потом продолжать двигаться по кругу или свернуть).
Задача моделирования и управление движением
На каком ЯП будет написано не важно.
Спасибо что помогли.
http://www.cyberforum.ru/windows-forms/thread653170.html
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.07.2014, 12:44
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Задача моделирования и управление движением (C#):

Полет самолета. С движением по окружности
Здравствуйте, у меня появилась проблема с анимацией. Нужна помощь!! Сижу уже...

Игра. Проблемы с плавным движением объектов
господа а на C# нельзя пример у меня форма должна вращаться увеличиваясь в...

Как вставить анимированную картинку с движением по форме
Как вставить Анимированную картинку + чтоб она передвигалась! пробовал...

Построение графика с масштабированием, движением по полю - какие способы?
Какие есть способы построения графика с масштабированием, удобным движением по...

Моделирования кольцевого маршрута автобуса
Разработать программу моделирования кольцевого маршрута автобуса. Исходные...

6
user7824
1 / 1 / 0
Регистрация: 24.07.2014
Сообщений: 9
27.07.2014, 20:21  [ТС] #2
Как сделать чтобы моя точка двигалась по всей фигуре? Или нужно фигуру как-то по другому рисовать?


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
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 Проект
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        
 
        private void Form1_Load(object sender, EventArgs e)
        {
            this.Text = "Проект";
            button1.Text = "Рисовать";
            button2.Text = "Старт";
          
        }
        private void button1_Click(object sender, EventArgs e)
        {
            Pen Перо = new Pen(Color.Black, 1);
 
            Graphics g = pictureBox1.CreateGraphics();
            Graphics g1 = pictureBox1.CreateGraphics();
            Graphics g2 = pictureBox1.CreateGraphics();
 
            Graphics t = pictureBox1.CreateGraphics();
            Graphics t1 = pictureBox1.CreateGraphics();
            Graphics t2 = pictureBox1.CreateGraphics();
 
            int b = 25;
            int a = 43;
            g.DrawLine(Перо, 110, 260, 210, 260);
            g1.DrawLine(Перо, 110 + b, 60 + a, 60 + b, 210 + (50 - a));
            g2.DrawLine(Перо, 160 + b, 60 + a, 210 + b, 210 + (50 - a));
 
            t.DrawEllipse(Перо, 110, 10, 100, 100);
            t1.DrawEllipse(Перо, 210, 210, 100, 100);
            t2.DrawEllipse(Перо, 10, 210, 100, 100);
 
            Pen Перо1 = new Pen(Color.Red, 1);
            Graphics w = pictureBox1.CreateGraphics();
            w.DrawRectangle(Перо1, 160, 10, 2, 2);
 
 
        }
 
    }
}
вот что получилось
Задача моделирования и управление движением
0
ViterAlex
6348 / 3552 / 1458
Регистрация: 11.02.2013
Сообщений: 7,818
Завершенные тесты: 3
28.07.2014, 02:33 #3
Лучший ответ Сообщение было отмечено user7824 как решение

Решение

Чтобы точка двигалась по какому-либо маршруту, этот маршрут нужно описать математически, если маршрут можно представить каким-либо уравнением или как иначе, если маршрут нельзя описать уравнением.
Я так понял, что клетка, это одна из окружностей. Значит, их нужно как-то идентифицировать. Скажем, вверху — номер один, внизу справа — номер два, внизу слева — номер три. Теперь при перемещении точки по часовой стрелке, её нужно рисовать поочерёдно в 1-2-3 и так по кругу. Против часовой — в обратном порядке.
Таким образом, эту фигуру нужно реализовывать в виде класса, имеющего методы MoveCounterClockWise и MoveClockWise, для движения против часовой и по соответственно.
Внутри класса следует рисовать саму фигуру и точку, причём точку нужно перерисовывать при вызове вышеупомянутых методов. Класс должен возвращать картинку, описывающую текущее состояние фигуры и положение точки.
Если будет время, до завтра могу набросать примерный проект

Ну вот, примерно так. Проект под VS2013
1
Вложения
Тип файла: zip sourceCode.zip (13.5 Кб, 6 просмотров)
user7824
1 / 1 / 0
Регистрация: 24.07.2014
Сообщений: 9
28.07.2014, 12:02  [ТС] #4
ViterAlex, Спасибо!
Я понял так
Частица находится в любой клетке и движется по контуру(по ячейкам).
Например вверху
Название: 34.jpg
Просмотров: 86

Размер: 26.9 Кб
Сначала я выбираю как она будет двигаться по часовой стрелке или против нее, по окружности. Но когда частица доходит до места где у нее есть выбор продолжать двигаться по окружности или свернуть на прямую, мы выбираем дальнейший ее путь. И так каждый раз.
То есть движется по ячейкам
0
ViterAlex
6348 / 3552 / 1458
Регистрация: 11.02.2013
Сообщений: 7,818
Завершенные тесты: 3
29.07.2014, 01:02 #5
Цитата Сообщение от user7824 Посмотреть сообщение
Я понял так
А я пока смутно понимаю. Вот этот маршрут в виде треугольника с кругами на вершинах, он всегда такой или может быть любой конфигурации?
Цитата Сообщение от user7824 Посмотреть сообщение
когда частица доходит до места где у нее есть выбор продолжать двигаться по окружности или свернуть на прямую, мы выбираем дальнейший ее путь
Вариантов выбора может быть только два или больше? Т.е. сколько разветвлений может иметь одна ячейка: два, три, четыре?
К чему эта задача вообще относится? К какой области человеческих знаний?
0
user7824
1 / 1 / 0
Регистрация: 24.07.2014
Сообщений: 9
30.07.2014, 18:22  [ТС] #6
Цитата Сообщение от ViterAlex Посмотреть сообщение
К чему эта задача вообще относится? К какой области человеческих знаний?
ну это такие задания по практике первого курса)) на прикладной математике.
пришел я к препаду, сказал что не знаю как делать тыры пыры
он дал задачку с одним кругом
сделал все сам сижу довольный))
и вот результат Задача.rar
1
ViterAlex
6348 / 3552 / 1458
Регистрация: 11.02.2013
Сообщений: 7,818
Завершенные тесты: 3
30.07.2014, 21:03 #7
Меня этот вопрос заинтересовал. Есть наброски, но мало времени. В результате будет возможность строить маршрут любой конфигурации
0
30.07.2014, 21:03
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.07.2014, 21:03
Привет! Вот еще темы с решениями:

моделирования управления предприятиями.(совет!)
Добрый день. Я пишу програму для моделирования управления предприятиями. Ето...

Что лучше использовать для моделирования интерференции?
Здравствуйте! что лутше использовать OpenGL,Direct3D или стандартные компоненты...

Использование дека для моделирования работы склада
Ребят помогите чем можете: Разработать программу, использующую дек для...

Программа моделирования Т-образного сортировочного узла с использованием БД
У меня вот такое задание курсовой работы Программа моделирования Т-образного...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru