Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Изобразить последовательно зацепленными N шестерней с заданными параметрами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Считать текст из файла и вывести все его предложения в обратном порядке http://www.cyberforum.ru/cpp-beginners/thread691845.html
с++(желательно в коде cout) 1) надо решить с помощью двумерного массива: дана прямоугольная целочисленная матрица. Определить: а) количество строк содержащих хотя бы 1 нулевой элемент б) номер...
C++ Поменять местами два элемента двусвязного списка Доброго времени суток. Помогите пожалуйста с задачей. Необходимо реализовать функцию, которая меняет местами два элемента в двусвязном списке. Если элементы находятся где-то в середине списка, то... http://www.cyberforum.ru/cpp-beginners/thread691842.html
сложить два vector C++
привет всем !есть ли функция чтобы сложить каждый элемент двух векторов ?чтобы потом можно сохранить в новый вектор результат сложение элементов двух векторов. или для этого надо писать алгоритм ?
Ряд Тэйлора для tg(x) C++
Добрый день уважаемые читатели. Я на первом курсе и учу с++. Сейчас у меня лабораторная по циклам с разветвлением. Задача такая: Посчитать значение функции с помощью ряда Тейлора. Аргумент...
C++ Что делает конструкция (Mat_<float>(1,2) << i,j) http://www.cyberforum.ru/cpp-beginners/thread691819.html
Привет, всем:-) Имеется конструкция: for (int i = 0; i < image.rows; ++i) { for (int j = 0; j < image.cols; ++j) { Mat sampleMat = (Mat_<float>(1,2) << i,j); } }
C++ Произведение элементов массива, расположенных между максимальным и минимальным элементами Добрый вечер. Помогите разобраться с массивами. Поиск изал но толком ничего понятного для себя не нашел. Делать программу пытался сам но почему-то мы не можем все подружиться.. Собственно прошу... подробнее

Показать сообщение отдельно
blr_LeLiK
0 / 0 / 0
Регистрация: 20.06.2015
Сообщений: 7
10.10.2016, 17:02
Всё доволи таки просто, останется немного допилить!
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
struct cogwheel
{
  TPoint point;  // центр
  int r, toothHeight, toothCount, angle, rCenter, dir, speed;  // радиус, высота зубьев, кол-во, угол, центр оси, направление и скорость вращения
  TColor color, color2, color3;  // цвет колеса, зубьев и оси
}cw;
//---------------------------------------------------------------------------
void draw_cogwheel(cogwheel)
{
  Form1->Canvas->Brush->Color = cw.color;
  Form1->Canvas->Pen->Color = cw.color;
  Form1->Canvas->Ellipse(cw.point.x-cw.r, cw.point.y-cw.r, cw.point.x+cw.r, cw.point.y+cw.r);
 
  Form1->Canvas->Brush->Color = cw.color2;
  Form1->Canvas->Pen->Color = cw.color2;
  int rOut = cw.r + cw.toothHeight;
  TPoint points[4];
  for (int i = 0; i < cw.toothCount; i++)
  {
    points[0] = Point(cw.point.x+cw.r*cos(cw.angle*M_PI/180+2*M_PI*i/cw.toothCount), cw.point.y+cw.r*sin(cw.angle*M_PI/180+2*M_PI*i/cw.toothCount));
    points[1] = Point(cw.point.x+cw.r*cos(cw.angle*M_PI/180+(i+.5)/cw.toothCount*2*M_PI), cw.point.y+cw.r*sin(cw.angle*M_PI/180+(i+.5)/cw.toothCount*2*M_PI));
    points[2] = Point(cw.point.x+rOut*cos(cw.angle*M_PI/180+(i+.4)/cw.toothCount*2*M_PI), cw.point.y+rOut*sin(cw.angle*M_PI/180+(i+.4)/cw.toothCount*2*M_PI));
    points[3] = Point(cw.point.x+rOut*cos(cw.angle*M_PI/180+2*M_PI*(i+.1)/cw.toothCount), cw.point.y+rOut*sin(cw.angle*M_PI/180+2*M_PI*(i+.1)/cw.toothCount));
    Form1->Canvas->Polygon(points, 3);
  }
 
  Form1->Canvas->Brush->Color = cw.color3;
  Form1->Canvas->Pen->Color = cw.color3;
  Form1->Canvas->Ellipse(cw.point.x-cw.rCenter, cw.point.y-cw.rCenter, cw.point.x+cw.rCenter, cw.point.y+cw.rCenter);
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru