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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Tokke
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 4
#1

Как окрасить в цвет фигуру, траекторию, область - C++

11.11.2012, 15:58. Просмотров 355. Ответов 2
Метки нет (Все метки)

Как мне передать все значения моих точек в одно поле, которому в последствие мы зададим цвет, учитывая способы рисования моей траектории и фигуры?
Вложения
Тип файла: rar OOP Laba 4.rar (9.7 Кб, 3 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2012, 15:58     Как окрасить в цвет фигуру, траекторию, область
Посмотрите здесь:

Как перерисовать всю клиентскую область? C++
как заполнить фигуру C++
C++ Как включить рабочую область в VS 2010
C++ Как попасть в область на координате (х,у) ?
C++ Написать программу, которая будет определять цвет пикселя под курсором и выводить на экран этот цвет
Как вывести фигуру в окне? C++
C++ Окрасить точку в зависимости от ее значения
C++ Как дополнить код Windows программы, чтобы она отобразила в окне геометрическую фигуру?
C++ Рассчитать траекторию падения шарика под углом к горизонту
Как нарисовать такую фигуру? C++
C++ Как нарисовать фигуру и двигать ее мышью?
C++ Область видимости, как ее понимать

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,916
Записей в блоге: 1
11.11.2012, 16:01     Как окрасить в цвет фигуру, траекторию, область #2
даже если там 500 строк кода, легче запостить на форум, чем ждать что кому-то не лень будет качать.
Tokke
0 / 0 / 0
Регистрация: 12.10.2012
Сообщений: 4
11.11.2012, 16:04  [ТС]     Как окрасить в цвет фигуру, траекторию, область #3
C++
1
2
3
4
5
6
7
8
9
10
void TTrajectory::vPaint (TPaintBox* Form)
{
    #define pi 3.142
    for (int i = 0; i <= 1000; i++)
    {
        pntFTrajectoryPoint[i] = Point(pntFBazePoint.x + intFScale * 0.01 *1.5* dubFA * cos(1.5 * pi + i * pi / 1000),
                                       pntFBazePoint.y - intFScale * 0.01 * dubFB * sin(2.5 * pi + i * pi / 1000));
    }
    Form->Canvas->Polygon(pntFTrajectoryPoint, 1000);
}
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
60
61
62
63
64
65
66
67
68
69
70
71
72
void TFigure::vPaint(TPaintBox* Form)
{
 
   int i;
   TPoint tPoints [5];
   double x, y,r=15,fi=0,X0,Y0;
   const double pi = 3.1415;
 
   if (intPFigureSpeed<=1000)
   {
        X0=pntFBazePoint.x + intFScale * 0.01 * 1.5 * dubFA * cos(1.5 * pi + intFFigureSpeed * pi / 1000);
        Y0=pntFBazePoint.y - intFScale * 0.01 * dubFB * sin(2.5 * pi + intFFigureSpeed * pi / 1000);
   }
   else
   {
       X0=pntFBazePoint.x + 0.01 * dubFA * cos(0* pi / 1000)-2;
       Y0=pntFBazePoint.y - intFScale * 0.01 * dubFB * sin(2.5 * pi + intFFigureSpeed * pi / 1000);
   }
 
 
 
   for ( i=0; i < 5; i++ )
{
   pntFFigurePoint[i].x = X0 + r*dubFBreathe/100*cos(fi*(pi/180));
   pntFFigurePoint[i].y = Y0 - r*dubFBreathe/100*sin(fi*(pi/180));
   fi=fi+90;
}
 
Form->Canvas->Polyline(pntFFigurePoint,4);
fi=0;
 
    for (i=0; i < 5; i++)
{
   pntFFigurePoint[i].x = X0 - 2*dubFBreathe/100*r + r*dubFBreathe/100*cos(fi*(pi/180));
   pntFFigurePoint[i].y = Y0 - r*dubFBreathe/100*sin(fi*(pi/180));
   fi=fi+90;
}
 
Form->Canvas->Polyline(pntFFigurePoint,4);
fi=0;
 
     for (i=0; i < 5; i++)
{
   pntFFigurePoint[i].x = X0 + r*dubFBreathe/100*cos(fi*(pi/180));
   pntFFigurePoint[i].y = Y0 - 2*dubFBreathe/100*r - r*dubFBreathe/100*sin(fi*(pi/180));
   fi=fi+90;
}
 
Form->Canvas->Polyline(pntFFigurePoint,4);
fi=0;
 
    for (i=0; i < 5; i++)
{
   pntFFigurePoint[i].x = X0 + r*dubFBreathe/100*cos(fi*(pi/180));
   pntFFigurePoint[i].y = Y0 + 2*dubFBreathe/100*r - r*dubFBreathe/100*sin(fi*(pi/180));
   fi=fi+90;
}
 
Form->Canvas->Polyline(pntFFigurePoint,4);
fi=0;
 
    for (i=0; i < 5; i++)
{
   pntFFigurePoint[i].x = X0 + 2*dubFBreathe/100*r + r*dubFBreathe/100*cos(fi*(pi/180));
   pntFFigurePoint[i].y = Y0 - r*dubFBreathe/100*sin(fi*(pi/180));
   fi=fi+90;
}
 
Form->Canvas->Polyline(pntFFigurePoint,4);
fi=0;
 
}
Как единовременно перекрасить все точки из которых состоит фигура и траектория, задавая цвет при помощи ColorDialog
Yandex
Объявления
11.11.2012, 16:04     Как окрасить в цвет фигуру, траекторию, область
Ответ Создать тему
Опции темы

Текущее время: 13:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru