Russian Qt Forum
Октябрь 01, 2024, 02:41 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Какими средствами можно это нарисовать?  (Прочитано 7200 раз)
van_de_luxe
Гость
« : Декабрь 21, 2016, 23:01 »

Хочу нарисовать несколько графиков, подобно рисунку.  Они будут накладываться и должны быть полупрозрачными. Потом на них еще будет накладываться курсор.  Подскажите какими средствами это удобнее сделать и чтобы не сильно долго рисовалось.
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #1 : Декабрь 22, 2016, 09:12 »

Кажется, qwt это должна осилить
Записан
van_de_luxe
Гость
« Ответ #2 : Декабрь 22, 2016, 14:41 »

А какие еще есть варианты?
Несколько раз видел упоминание Arthur, но что это такое так и не понял, примеров в Qt 5.5 нет. Еще не понял возможно ли это реализовать с использованием QCanvas, QPainter
Насколько сложно будет это реализовать с использованием OpenGL? (я понимаю, что придется тогда самому все примитивы рисовать, а может и есть какие библиотеки для графиков на основе GL?)
Сам выбрать не знаю что, глаза разбегаются, а в голове каша, не пойму какие встроенные средства есть для рисования и какие у них возможности. Хотелось бы сторонние библиотеки не привлекать, если получится
Записан
ViTech
Гипер активный житель
*****
Offline Offline

Сообщений: 858



Просмотр профиля
« Ответ #3 : Декабрь 22, 2016, 15:02 »

Сам не пользовался, но может подойдёт: Qt Charts, использовать Qt Quick (Qt Quick Examples).
Записан

Пока сам не сделаешь...
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4350



Просмотр профиля
« Ответ #4 : Декабрь 22, 2016, 15:15 »

Такое легко рисуется через старый добрый QPainter. Улыбающийся
И вот вам тема, в которой вы найдете все остальные ответы: http://www.prog.org.ru/topic_6004_30.html
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #5 : Декабрь 22, 2016, 18:13 »

Проще взять Qwt, там есть пример CPU-блабла где именно то что нужно. Кроме того, если понадобится добавление всяких маркеров и прочего, то опять - же, в Qwt это все есть.

PS: Делать самому - это бррр... т.к. затратнее выйдет в итоге.
« Последнее редактирование: Декабрь 22, 2016, 18:15 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #6 : Декабрь 22, 2016, 18:15 »

Можно и Qwt, но смотря что за "курсор" вам нужен и какое поведение. Qwt не очень-то гибкая в этом смысле.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #7 : Декабрь 22, 2016, 18:19 »

Цитировать
Qwt не очень-то гибкая в этом смысле.

Хм... ну, а разве QtCharts гибкая? Оно еще и под GPL в придачу Грустный

Как по мне, то Qwt достаточно гибок, но у него концепция несколько "странная"... А в остальном  - вроде норм.
Записан

ArchLinux x86_64 / Win10 64 bit
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #8 : Декабрь 23, 2016, 08:55 »

Подскажите какими средствами это удобнее сделать и чтобы не сильно долго рисовалось.
Простейшими - просто рисовать без затей. Здесь не видно трудностей/проблем чтобы искать что-то "особенное"
Записан
gil9red
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 1805



Просмотр профиля WWW
« Ответ #9 : Декабрь 23, 2016, 10:24 »

Подскажите какими средствами это удобнее сделать и чтобы не сильно долго рисовалось.
Простейшими - просто рисовать без затей. Здесь не видно трудностей/проблем чтобы искать что-то "особенное"

Тем, кто таким не занимался раньше такое нарисовать вовсе не просто Улыбающийся

Кст, плавная кривая линия между точками, это кривая Безье?
Записан

Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #10 : Декабрь 23, 2016, 14:47 »

Тем, кто таким не занимался раньше такое нарисовать вовсе не просто Улыбающийся

Кст, плавная кривая линия между точками, это кривая Безье?
А в чем эта "непростота"? Любые кривые должны быть заданы чтобы их можно было нарисовать. Грубо говоря "формулы дадут" (для Безье они тоже давно известны). Ну и рисуете линии от одной точки к другой. Заливка гистограмм очевидна - тоже линии. Остаются еще кружки с градиентом - уж не их ли Вы испугались?  Улыбающийся

Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #11 : Декабрь 24, 2016, 00:54 »

Ну тут опять же, смотря шо автору нада...
Если цель - один статический виджет в одном месте, то можно и паинтером накалякать.
Если же тут все более глобально и таких графиков будет 100500, то уже стоит задумаццо... Может и кувт, а может свой виджет сделать имеет смысл.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
arhiv6
Гость
« Ответ #12 : Январь 10, 2017, 12:51 »

Посмотрите QCustomPlot, у них в примерах есть похожее.
Записан
sergek
Гипер активный житель
*****
Offline Offline

Сообщений: 872


Мы должны приносить пользу людям.


Просмотр профиля
« Ответ #13 : Январь 10, 2017, 13:13 »

Посмотрите QCustomPlot, у них в примерах есть похожее.
Тоже GPL, как и Qt Charts.
Записан

Qt 5.13.0 Qt Creator 5.0.1
Win10, Ubuntu 20.04
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 23.