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

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

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

Алгоритм Брезенхэма - C++

11.03.2013, 00:10. Просмотров 907. Ответов 5
Метки нет (Все метки)

Разбираюсь с принципом использования Алгоритма Брезенхэма, при написании программы на С++ возникают ошибки, не могу понять по какой причине они появляются.Подскажите в чем ошибка
Ниже приведен листинг программы:

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
#include<iostream>
using namespace std;
void drawLine(int x1, int y1, int x2, int y2)
{
    const int deltaX = abs(x2 - x1);
    const int deltaY = abs(y2 - y1);
    const int signX = x1 < x2 ? 1 : -1;
    const int signY = y1 < y2 ? 1 : -1;
    //
    int error = deltaX - deltaY;
    //
    setPixel(x2, y2);
    while(x1 != x2 || y1 != y2) {
        setPixel(x1, y1);
        const int error2 = error * 2;
        //
        if(error2 > -deltaY) {
            error -= deltaY;
            x1 += signX;
        }
        if(error2 < deltaX) {
            error += deltaX;
            y1 += signY;
        }
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2013, 00:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Алгоритм Брезенхэма (C++):

Алгоритм Брезенхэма - C++
Добрый вечер! пожалуйста помогите разобрать построение прямой через заданные две точки с координатами x1,y1 и x2,y2.

Алгоритм Брезенхэма - C++
Здравствуйте. Помогите пожалуйста разобраться с алгоритмом Брезенхэма. Кому не сложно поставте пожалуйста комментарии подробные к...

Перевод из C# в C++ (VS 2015). Алгоритм Брезенхэма - C++
void BresenhamLine(int x0, int y0, int x1, int y1) { var steep = Math.Abs(y1 - y0) &gt; Math.Abs(x1 - x0); // Проверяем рост отрезка...

Ошибка компиляции в Алгоритме Брезенхэма - C++
Есть код, который компилю на QT, но всё время ругается на строчку error: 'setPixel' was not declared in this scope Что бы я вместо...

Нужен алгоритм поиска пути в этом лабиринте (будь то волновой алгоритм или алгоритм правой/левой руки ) - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; using namespace std; void lab () { int s1 = 0; int s2 =...

Волновой алгоритм поиска (Алгоритм A* / Алгоритм А стар) - C++
Хочу разработать алгоритм для решения головоломки с подвижными дисками (перестановочная головоломка). Определение. Перестано́вочные...

5
kazak
3050 / 2371 / 160
Регистрация: 11.03.2009
Сообщений: 5,436
Завершенные тесты: 1
11.03.2013, 00:28 #2
Какого рода ошибки?
0
Joker1
0 / 0 / 0
Регистрация: 05.11.2012
Сообщений: 4
11.03.2013, 01:25  [ТС] #3
Выводит слдующие ошибки:
0
Миниатюры
Алгоритм Брезенхэма  
Kuzia domovenok
2052 / 1897 / 174
Регистрация: 25.03.2012
Сообщений: 6,520
Записей в блоге: 1
11.03.2013, 02:26 #4
ну значит нет такой функции setPixel
Я понятия не имею, откуда ты хотел её взять.
Вопрос: каким способом ты выводишь графику?
0
Joker1
0 / 0 / 0
Регистрация: 05.11.2012
Сообщений: 4
11.03.2013, 11:02  [ТС] #5
Этот код нашел в нете.хотел наоснове его понять принцип работы алгоритма Брезенхэма
0
Kuzia domovenok
2052 / 1897 / 174
Регистрация: 25.03.2012
Сообщений: 6,520
Записей в блоге: 1
11.03.2013, 11:56 #6
Принцип работы он и так замечательно демонстрирует. Сиди и понимай.
Для того, чтобы ещё что-то на экран выводилось, нужна графика. Вот я и спрашиваю, каким образом ты собираешься графику выводить?

Добавлено через 12 минут
Ты понял? именно ПРИНЦИП этот код и демонстрирует. setPixel в нём просто некая абстрактная функция вывода пикселя. Её реализация зависит от того, каким способом ты выводишь графику.

А чтобы что-то выводилось, тебе необходимо вместо setPixel использовать те графические средства, которыми ты пользуешься.
2
11.03.2013, 11:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2013, 11:56
Привет! Вот еще темы с ответами:

Помогите алгоритм для char переделать в алгоритм для float - C++
char* DecToBin(char x, char* str) { int i; for (i = sizeof(x)*8-1; i&gt;=0; i--) { str = (x&amp;1 == 1) ? '1' : '0'; x = x &gt;&gt;...

Волновой алгоритм (алгоритм Ли) - C++
Здравствуйте! У кого-нибудь есть реализованный волновой алгоритм (алгоритм Ли) ? Дело в том, что я игрушку захотел написать (что-то...

Алгоритм Брезенхэма - Lisp
У кого есть программа, которая реализует алгоритм Брезенхема

Алгоритм Брезенхэма - Delphi
Ребят, кто знает где можно найти хорошее чтиво(ссылку) по Теме: &quot;построение окружности и отрезка (по Брезенхему)&quot; Именно нужна не...


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

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

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