Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: Eyxeniy от Июнь 01, 2011, 01:56



Название: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 01:56
Как это не глупо, но я новичок и ни чего не получается. При компиляции ошибки вылезают. Кому не лень, плиз.
Простую линию. Компиляция в KDevelop. И пожалуйста библиотеки не забываем.
А то читаю Макса Шлея и не получается графика.Не один код не фу рычит.


Название: Re: Напишите плиз линию.
Отправлено: Denjs от Июнь 01, 2011, 14:32
ещё раз. внятно и в терминах понятных другим людям. что вам надо? переыразируйте.
"Линию написать" нельзя, вы  уж извините.


Название: Re: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 14:45
ещё раз. внятно и в терминах понятных другим людям. что вам надо? переыразируйте.
"Линию написать" нельзя, вы  уж извините.
Напишите код программы на Qt4, чтобы она выводила простую линию.


Название: Re: Напишите плиз линию.
Отправлено: LisandreL от Июнь 01, 2011, 14:56
Напишите код программы на Qt4, чтобы она выводила простую линию.
сарказм:
Код
C++ (Qt)
#include <QApplication>
#include <QLabel>
 
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   QLabel label("______________________________\n");
   label.show();
   return a.exec();
}

А если серьёзно, то QPainter::drawLine, например.
Всё зависит от того, на чём вы рисовать собираетесь.
Например, если на пример GraphicsView - посмотрите пример Graphics View > Ported Canvas, если просто на виджетах - посмотрите Painting > Basic Drawing.


Название: Re: Напишите плиз линию.
Отправлено: merke от Июнь 01, 2011, 15:40
Как это не глупо, но я новичок и ни чего не получается. При компиляции ошибки вылезают. Кому не лень, плиз.
Простую линию. Компиляция в KDevelop. И пожалуйста библиотеки не забываем.
А то читаю Макса Шлея и не получается графика.Не один код не фу рычит.

"Линия" =)))

Как и просил ты, написал я тебе линию)

Объясни в консольке линию вывести, нарисовать на виджете, на сцене?


Название: Re: Напишите плиз линию.
Отправлено: Igors от Июнь 01, 2011, 15:51
ещё раз. внятно и в терминах понятных другим людям. что вам надо? переыразируйте.
"Линию написать" нельзя, вы  уж извините.
Учитель, а вот если у меня есть только ф-ция "вывести/закрасить точку", как мне тогда нарисовать линию (отрезок) из точки p0(x, y) в точку p1(x, y)? И будет ли она такой же как из p1 в p0?

Спасибо


Название: Re: Напишите плиз линию.
Отправлено: GreatSnake от Июнь 01, 2011, 16:36
Неужто с твоим опытом тебе нужен ответ? :)


Название: Re: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 17:10
Напишите код программы на Qt4, чтобы она выводила простую линию.
сарказм:
Код
C++ (Qt)
#include <QApplication>
#include <QLabel>
 
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   QLabel label("______________________________\n");
   label.show();
   return a.exec();
}

А если серьёзно, то QPainter::drawLine, например.
Всё зависит от того, на чём вы рисовать собираетесь.
Например, если на пример GraphicsView - посмотрите пример Graphics View > Ported Canvas, если просто на виджетах - посмотрите Painting > Basic Drawing.

Большое спасибо. Увидел свою ошибку )))
А чем лучше пользоваться чтобы заставить эту линию двигаться ? Я имею ввиду (QPainter::drawLine,Graphics View > Ported Canvas,Painting > Basic Drawing). Что лучше для новичка ? Под двигаться я понимаю( чтобы она или крутилась или поворачивалась). Чем проще пользоваться и быстрее обучиться ?



Название: Re: Напишите плиз линию.
Отправлено: merke от Июнь 01, 2011, 17:16
QGraphicsView -> QGraphicsScene -> QGraphicsLineItem


Название: Re: Напишите плиз линию.
Отправлено: merke от Июнь 01, 2011, 17:30
писал на коленях, не шедевр, но для толчка пойдет

качай файл во вложении...


Название: Re: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 18:11
писал на коленях, не шедевр, но для толчка пойдет

качай файл во вложении...

Странно, у меня ошибки выдаёт:

cd '/home/stud/Desktop/a' && LC_MESSAGES="C" LC_CTYPE="C" gmake -k
cd src/ && /usr/bin/qmake-qt4 src.pro -unix -o Makefile
cd src/ && gmake -f Makefile
компиляция main.cpp (g++)
main.cpp:22:20: error: dialog.h: No such file or directory
main.cpp: In function 'int main(int, char**)':
main.cpp:27: error: 'Dialog' was not declared in this scope
main.cpp:27: error: expected `;' before 'w'
main.cpp:28: error: 'w' was not declared in this scope
gmake[1]: *** [main.o] Error 1
gmake[1]: Target `first' not remade because of errors.
gmake: *** [sub-src-make_default] Error 2
gmake: Target `first' not remade because of errors.
*** Завершено с кодом: 2 ***



Название: Re: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 19:55
И можно ли это все сделать не разбивая файл ? Т.е.   Qmake,простое приложение qt4,потом весь код пишем в main,a не рассовываем его по папкам.


Название: Re: Напишите плиз линию.
Отправлено: merke от Июнь 01, 2011, 19:57
Какие ещё папки, молодой человек, читайте книжки на C++ Qt. Единственный выход


Название: Re: Напишите плиз линию.
Отправлено: Eyxeniy от Июнь 01, 2011, 19:58
тоже выход  ;D


Название: Re: Напишите плиз линию.
Отправлено: Denjs от Июнь 01, 2011, 23:12
Учитель, а вот если у меня есть только ф-ция "вывести/закрасить точку", как мне тогда нарисовать линию (отрезок) из точки p0(x, y) в точку p1(x, y)? И будет ли она такой же как из p1 в p0?
Стыдно для такого большого дядьки не знать основ дискретной математики и компьютерной графики)))))
впрочем и второй вопрос тоже стыдно не знать. Ведь ответ зависит от алгоритма расчета координат ))))

впрочем оба упомянутых вопроса наверное носят целью убедитьбся в том что не только Igors помнит основы комрьтерной графики? что-ж... задам встречный вопрос - а вы помните алгоритмы удаления невидимых линий, алгоритмы построения проекции точек на плоскость и алгоритмы вращения геометрических фигур в пространстве? а так что бы без матриц?


Название: Re: Напишите плиз линию.
Отправлено: Igors от Июнь 02, 2011, 10:13
Стыдно для такого большого дядьки не знать основ дискретной математики и компьютерной графики)))))
впрочем и второй вопрос тоже стыдно не знать. Ведь ответ зависит от алгоритма расчета координат ))))

впрочем оба упомянутых вопроса наверное носят целью убедитьбся в том что не только Igors помнит основы комрьтерной графики? что-ж... задам встречный вопрос - а вы помните алгоритмы удаления невидимых линий, алгоритмы построения проекции точек на плоскость и алгоритмы вращения геометрических фигур в пространстве? а так что бы без матриц?
Считаю что нет ничего стыдного в любой вопросе - если он задан вежливо. А вот отвечать вопросом на вопрос некорректно, здесь не израильский форум.

Так что будьте любезны, сначала ответьте на мой вопрос, а затем задайте свои - и я с удовольствием отвечу. Повторить "основы" никогда не мешает - или у нас дальше "концептуальности", саморекламы и бахвальства перед начинающими дело не идет?  :)


Название: Re: Напишите плиз линию.
Отправлено: ieroglif от Июнь 03, 2011, 11:07
http://www.prog.org.ru/topic_13567_0.html
как раз рисует линию =) с пояснениями и комментариями =)