Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
 Аватар для Mozart
39 / 17 / 1
Регистрация: 21.08.2009
Сообщений: 63

Отрисовка линии

21.08.2009, 18:29. Показов 1937. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
вот что накатал:
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int drawline (int x0,int y0,int x1,int y1){
    int dx=x1-x0;
    int dy=y1-y0;
    int cx0=x0,cy0=y0,cx1=x1,cy1=y1;
    int error=0,derr=dy;
    int res=0,stepy=1;
    int y=cy0;
    int x;
    int *rx=&x;
    int *ry=&y;         
 
    if (abs(dy)>abs(dx)){
       cout <<"PPC\n";
       int tmp=cx0;
       cx0=cy0;
       cy0=tmp;
       tmp=cx1;
       cx1=cy1;
       cy1=tmp;
       tmp=dx;
       dx=dy;
       dy=tmp;
       derr=dy;
       y=cy0;
       rx= &y;
       ry= &x;
 
    }   
 
    if (cx0>cx1){
       int tmp=cx1;
       cx1=cx0;cx0=tmp;
       tmp=cy1;
       cy1=cy0;cy0=tmp;
       dx=cx1-cx0;
    }
 
    if (cy1<cy0){
       dy=cy0-cy1;
       stepy=-1;
       y=cy0;
       derr=dy;
    }
     for (x=cx0;x<=cx1;x++){
 
         cout <<res++<<" "<<"x: "<<*rx<<" y: "<<*ry<<"\n";
         error += derr;
         if ((error<<1) >= dx){
             y += stepy;
             error -= dx;
         }
     }
 
    return res;  
    }
int main(int argc, char *argv[])
{
    cout<<drawline(10,30,20,10)<<"\n";
    cout<<drawline(420,10,0,188)<<"\n";
 
 
    system("PAUSE");
    return EXIT_SUCCESS;
}
Возможности проверить как рисует нету, потому вывод через каут. Если кому не сложно - проверьте.
Начинаю писать, кое чего знаю, но далеко не все =)
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.08.2009, 18:29
Ответы с готовыми решениями:

Отрисовка линии
Вот значит сижу и туплю, а проблема то легко решаемая... Так вот, поковырялся в msdn, и не получается всё равно... Нужно нарисовать...

отрисовка линии
пишу логический анализатор, функция читает состояние порта, и присваивает 150 раз в секунду строковой переменной значения типа 01010000 ...

Неправильная отрисовка линии
Проблема с отрисовкой нулевой линии при чтении линии графика из массива. Нулевая линия рисуется тем же карандашом, что и сам график. Если...

2
5 / 5 / 1
Регистрация: 17.08.2009
Сообщений: 168
21.08.2009, 18:48
прива у ти шариш в С++. Можеш помочь намалювати блок схему
0
 Аватар для Mozart
39 / 17 / 1
Регистрация: 21.08.2009
Сообщений: 63
21.08.2009, 19:00  [ТС]
у меня с алгоритмами слабовато, всегда код с балды писал. А как рисуются алгоритмы учил когдато - но уже забыл давно т.к. не использовал.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.08.2009, 19:00
Помогаю со студенческими работами здесь

Отрисовка динамической линии.
Мне нужно нарисовать линию на форме. По событию MouseDw начальные координаты линии задаю! По событию MouseUp конечные координаты линии...

Отрисовка линии на canvas
Только начинаю работать с wpf. Мне нужно создать usercontrol линию на canvas. Рисую линию таким образом: Line MyLine =...

Попиксельная отрисовка линии
Здравствуйте. Интересует такой вопрос. Требуется найти все пиксели, принадлежащие линии, зная ее начало и конец(точки начала и конца). ...

Отрисовка линии на виджете
Добрый день, помогите пожалуйста. Я написал класс - линию. Рисую на виджете. Проблема в том, что линию получается нарисовать только в...

Отрисовка линии с возможностью ее выделения
Здравствуйте, подскажите, как можно нарисовать линию, чтобы в дальнейшем можно было эмитировать ее выделение. Поскольку линия может быть...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru