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

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

Войти
Регистрация
Восстановить пароль
 
Owen04
5 / 5 / 3
Регистрация: 25.12.2009
Сообщений: 144
#1

В работающей проге нужно только сохранить отдельно рисунок. - C++

08.06.2010, 20:33. Просмотров 299. Ответов 0
Метки нет (Все метки)

Вобщем у меня есть программа(графика), но у меня дома на семерке она не хочет открываться.
А мне завтра её сдавать((( нужно распечатать...
Не могли бы ли вы просто сохранить изображение результата или хотя бы сфоткать его и прислать мне.
Вот код
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
#include<dos.h>
 
class car
{
  private:
    int x;
    int y;
  public:
    car(int X,int Y);
    void korpyc();//корпус
    void koleca();//колеса
    void dum();//дым в анимации
};
void car::dum()//дым
{
    randomize();//функция для случайной последовательности случайных чисел
    int X,Y;
    for(int i=0;i<30;i++)
    {
        setfillstyle(1,BLACK);//цвет заливки черный
        setcolor(BLACK);//цвет линий черный
                        bar(0,y+80,x+30,y+200); //залитый прямоугольник
        X = random(40);//Х - случайное число от 0 до 40
        Y = random(40); // у - случ число от 0 до 40
        setcolor(WHITE); //цвет белый
        setfillstyle(11,WHITE);//цвет заливки белый, заливается точками
        ellipse(x-20+X,y+140+Y,0,0,10,5);//еллипс 
        fillellipse(x-20+X,y+120+Y,6,2);//заливает еллипс точками
        X = random(40);//Х - случайное число от 0 до 40
        Y = random(40);// у - случ число от 0 до 40
        ellipse(x-20+X,y+140+Y,0,0,10,5);//еллипс
        fillellipse(x-20+X,y+120+Y,6,2);//заливает еллипс точками
        X = random(40);//х - случ число
        Y = random(40);//у - случ число
        ellipse(x-20+X,y+140+Y,0,0,10,5);//еллипс
        fillellipse(x-20+X,y+120+Y,6,2);//заливает еллипс точками
        delay(100);//задержка программы на 100 мсек
    }
 
}
car::car(int X,int Y)//конструктор класса
{
    x = X;
    y = Y;
}
void car::koleca()//рисует колеса
{
    setcolor(DARKGRAY);//цвет серый
    setfillstyle(1,DARKGRAY);//заливка сервая
    fillellipse(x+160,y+160,35,35);//залитый еллипс в виде круга
    fillellipse(x+400,y+160,35,35);//залитый еллипс в виде круга
    setcolor(RED);//цвет красный
    setfillstyle(1,BLUE);//цвет заливки синий
    circle(x+160,y+160,30);//круг
    circle(x+400,y+160,30);//круг
    floodfill(x+160,y+160,RED);//заливает синим по красный цвет
    floodfill(x+400,y+160,RED);//заливает синим по красный цвет
}
void car::korpyc()//рисует корпус машины
{
  setcolor(BLUE);//цвет синий
    arc(x+160,y+160,0,180,40);//полуокружность
  arc(x+400,y+160,0,180,40);//полуокружность
  moveto(x+120,y+160);//переходит в точку
  linerel(-40,0);//линия
  linerel(-40,-20);//линия
  linerel(0,-40);//линия
  linerel(40,-20);//линия
  linerel(40,0);//линия
  linerel(40,-60);//линия
  linerel(160,0);//линия
  linerel(80,60);//линия
  linerel(80,0);//линия
  linerel(40,20);//линия
    linerel(0,40);//линия
    linerel(-40,20);//линия
  linerel(-40,0);//линия
  line(x+200,y+160,x+360,y+160);//линия
  line(x+120,y+80,x+400,y+80);//линия
  setfillstyle(1,LIGHTBLUE);//цвет заливки голубой
  floodfill(x+240,y+40,BLUE);//заливает голубым
  setfillstyle(1,RED);//цвет заливки красный
  floodfill(x+240,y+120,BLUE);  //заливает красным по синий цвет
  line(x+160,y+20,x+160,y+120);//линия
  line(x+260,y+20,x+260,y+160);//линия
  line(x+400,y+80,x+400,y+120);//линия
  setfillstyle(1,BLUE);//заливка синий
    fillellipse(x+180,y+90,10,3);//залитый еллипс
    fillellipse(x+280,y+90,10,3);//залитый еллис
    setcolor(LIGHTGRAY);//цвет линий серый
    line(x+40,y+160,x+80,y+160);//линия
    setcolor(WHITE);//цвет линий белый
    setfillstyle(1,WHITE);//цвет заливки белый
    moveto(x+480,y+83);//переходит в точку
    linerel(0,17);//линия
    linerel(37,0);//линия
    lineto(x+480,y+83);//линия
    floodfill(x+481,y+84,WHITE);//заливка
    setfillstyle(1,BLUE);//цвет заливки синий
    setcolor(LIGHTGRAY);//цвет линий серый
    fillellipse(x+475,y+140,40,5);//залитый еллипс
    fillellipse(x+280,y+140,80,5);//залитый еллипс
    fillellipse(x+83,y+140,40,5);//залитый еллипс
 
}
int main(void)
{
   /* request auto detection */
 
   int gdriver = DETECT, gmode, errorcode;//переменные для граф режима
 /* initialize graphics and local variables */
     initgraph(&gdriver, &gmode, "C:\bc\bgi");//инициализация граф режима
 
 
   /* read result of initialization */
   errorcode = graphresult();//читает результат инициализации
   if (errorcode != grOk)  /* an error occurred */ //если были ошибки
   {
      printf("Graphics error: %s\n", grapherrormsg(errorcode));//выводит ошибку
      printf("Press any key to halt:");
      getch();
       exit(1);//выходит с программы
   }
   
     car c(70,150);//обьявляет переменную типа "кар"
     c.korpyc();//рисует корпус
     c.koleca();//рисует колеса
   setcolor(0);
     outtextxy(400,250,"F1");
   getch();//после ентера идет анимация дыма
   c.dum();//анимацяи дыма
 
     getch ();
     closegraph();
     return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2010, 20:33     В работающей проге нужно только сохранить отдельно рисунок.
Посмотрите здесь:

Зачем нужно прописывать прототипы отдельно от самой функции?? - C++
Зачем нужно прописывать прототипы отдельно от самой функции?? Мне ответят: что бы компилятор знал что &quot;отдать&quot;, и что &quot;получить&quot;. Но ведь я...

Пользователь вводит отдельно строку и символ, необходимо показать на экран номер только последнего совпадения - C++
Знает кто-то, как решить задачу на С++?При помощи строк. Пользователь вводит отдельно строку и символ, необходимо показать на экран номер...

Если из файла надо вытащить отдельно цифры и отдельно текст - как? - C++
Допустим дан файл: blablabla 1 2 5 4 1 2 lol 12 2 text 12 4 5

Вычислить суммарный и средний возраст отдельно мужчин, отдельно женщин - C++
Нужно вычислить суммарный и средний возраст (отдельно мужчин, отдельно женщин )а также их средний достаток. ВОТ МОЙ КОД. В нем мне...

Структуры. Записать отдельно имя и фамилию и отдельно числа - C++
Есть текстовый файл по типу : Ivanov Ivan 4 8 5 9 Petrov Petr 5 2 3 4 Ktoto Tam 5 4 1 2 Есть структура: struct My { ...

Упорядочить по возрастанию чётные элементы отдельно, нечётные отдельно - C++
1 и 2 задание выполнила, никак не могу справится с 3.Есть наброски Было дано задание: 1) произведение положительных элементов массива; ...

Нужно ли реализовать также отдельно конструктор копирования, если имеется перегруженный оператор присваивания? - C++
у меня есть класс. и прототип перегруженной операции присваивания some_class&amp; some_class::operator=(const some_class&amp; some_object); ...

Вывести на экран отдельно положительные элементы массива X (16) и отдельно отрицательные элементы - C++
Вывести на экран отдельно положительные элементы массива X (16) и отдельно отрицательные элементы.

Нужно сохранить результат в png, a не в bmp - C++
Вот мой код, сохраняющий рисунок(фиолетовый квадрат) в bmp#include &lt;string&gt; #include &lt;vector&gt; #include &lt;cmath&gt; #include &lt;limits&gt; ...

Нужно сохранить и вставить содержания ячеек - C++
У меня есть матрица 9 на 9. На ней есть ячейки с состаяниями 0, *, !, 1. Мне нужно сохранять (Save) та загружать (Load) содержание...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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