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

Алгоритм Брезенхема для разложения отрезка в растр - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Среднее месячное потребление для каждой из машин http://www.cyberforum.ru/cpp-beginners/thread1120484.html
Нужно написать программу для автопарка из 4 машин(1 легковая, 2 микроавтобуса и грузовик которые работают на бензине,дизелях и пропана). Среднее месячное потребление для каждого из них. Но проблема в том что нужно впихнуть массив и цикл,подскажите какие идеи у кого есть?
C++ Билдер с++ преобразование файлов ! #include <iostream> #include <memory> #include <string> using namespace std; class Mes { private: string *result; string stroka; FILE *F; http://www.cyberforum.ru/cpp-beginners/thread1120481.html
C++ Вычисление слова по его номеру
Имеется алфавит (стандартно заданный), пользователь должен ввести число, а программа выдать слово. Не получается сделать. Формула такая N = k_i*n+r_0; n - число букв алфавита k - длина слова 1<=r_0<=n Я поняла, что алгоритм будет похож на перевод из десятичной системы счисления. но что то у меня не правильно работает, вот что получилось #include <iostream> #include<math.h> using...
Не пользуясь никакими другими арифметическими операциями, кроме умножения, получить А в 21 степени, за шесть операций. C++
подскажите пожалуйста как написать на С++ задачу. Дано действительное число А. Не пользуясь никакими другими арифметическими операциями, кроме умножения, получить А в 21 степени, за шесть операций.
C++ Крестики-нолики. Минимакс. Надо сдать лабу. Преподавательница - зверь http://www.cyberforum.ru/cpp-beginners/thread1120404.html
Доброго времени суток, уважаемые форумчане! Прошу вас о помощи. Преподавательница зверь!! Спрашивает о каждой строчке в коде. Который раз сдать не могу. Код прилагается. Если кому не сложно, прокомментируйте код относительно самих ходов Min и Max. #include "stdafx.h" #include "time.h" #include <iostream> #include <stdio.h> #include <stdlib.h> #include <list> using namespace std;
C++ знак 1 пропущенный вызов постоянно горит знак 1 пропущенный вызов, хотя я удалила все журналы вызовов, сделала перегрузку, несколько раз отключала телефон, удаляла симки подробнее

Показать сообщение отдельно
GetHelp
-8 / 60 / 6
Регистрация: 27.02.2013
Сообщений: 1,112
16.03.2014, 14:11  [ТС]     Алгоритм Брезенхема для разложения отрезка в растр
че та все равно не работает, сделал немного по другому, покрасивше вызываю с параметром RGB(0,0,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
void InsertLine(HDC hdc, RECT rc, COLORREF color)
{
    int x, y, xend, yend, s, dx, dy, d, inc1, inc2;
    int x1,y1,x2,y2;
    x1=rc.left;
    x2=rc.right;
    y1=rc.top;
    y2=rc.bottom;
    dx = abs(x2-x1); 
    dy = abs(y2-y1);
    if (dx > dy) 
    {
        inc1 = 2*dy; 
        inc2 = 2*(dy - dx); 
        d = 2*dy - dx;
        if (x1 < x2)
        {
            x = x1; y = y1; xend = x2;
            if (y1 < y2) s = 1;
            else s = -1;
        }
        else
        {
            x = x2;
            y = y2; 
            xend = x1;
            if (y1 > y2) s = 1;
            else s = -1;
        }
        SetPixel(hdc,x,y,color);
        while (x < xend)
        {
            x++;
            if (d > 0)
            {
                y+=s;
                d+=inc2;
            }
            else d+=inc1;
            SetPixel(hdc,x,y,color);
        }
    }
    else
    {
        inc1 = 2*dx; 
        inc2 = 2*(dx - dy); 
        d = 2*dx - dy;
        if (y1 < y2)
        {
            y = y1; x = x1; yend = y2;
            if (x1 < x2) s = 1;
            else s = -1;
        }
        else
        {
            y = y2; 
            x = x2; 
            yend = y1;
            if (x1 > x2)s = 1;
            else s = -1;
        }
        SetPixel(hdc,x,y,RGB(255,255,255));
        while (y < yend)
        {
            y++;
            if (d > 0)
            {
                x+=s;
                d+=inc2;
            }
            else d+=inc1;
            SetPixel(hdc,x,y,RGB(255,255,255));
        }
    }
}
не рисует
 
Текущее время: 07:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru