Здравствуйте, гость ( Вход | Регистрация )
QMainWindow | Дата 12.9.2010, 16:00 |
Спасибо, собственно это и хотел узнать. Значит строить только отрезками. | |
Алексей1153 | Дата 5.9.2010, 19:59 |
первые два - строятся отрезками, третий - пикселами (или прямоугольниками, если точность слоновая). | |
Litkevich Yuriy | Дата 5.9.2010, 19:49 |
три штуки все эти три штуки нужно будет потом по точкам построить. от этого никуда не денешься, компьютер не карандаш |
|
Алексей1153 | Дата 5.9.2010, 19:44 |
по-моему их в природе не существует в голову приходят крайней мере три штуки, все с плюсами и минусами: - вычисление точек по функции y(x), соединение отрезками - вычисление точек по функции y(t), x(t) (параметрически) , соединение отрезками - вычисление точек путём сканирования диапазона вывода и сравнения с заданной точностью |
|
Litkevich Yuriy | Дата 5.9.2010, 19:27 |
А других методов нет? по-моему их в природе не существует |
|
Алексей1153 | Дата 5.9.2010, 19:08 |
я бы сказал, что метод будет зависеть от решаемой задачи. Тебе нужно просто красиво нарисовать кривульку или же нужно отобразить функцию с заданной точностью для, к примеру, визуального ("численного") решения уравнения ? Или ещё что-то ? | |
QMainWindow | Дата 5.9.2010, 18:52 |
Ну вот вопрос: как нарисовать, например, параболу? Я, честно говоря, знаю только один способ - взять нужный отрезок, разбить его, используя шаг разбиения ~0.001 или ~0.0001, создать double массив, в цикле записать координаты x и y=x^2, а потом отобразить его по точкам через метод drawLines(). А других методов нет? | |
Алексей1153 | Дата 5.9.2010, 10:00 |
QMainWindow, абсолютно всё рисуется "через QPainter" (вернее - через инкапсулированные в нём API ОС). И именно изврат с записью в массив, а потом только отображением - позволяет повысить производительность программы ![]() Задай конкретные вопросы |
|
QMainWindow | Дата 4.9.2010, 23:16 |
Добрый день! Вопрос в названии темы. Под стандартными инструментами подразумеваю QPainter и все что с ним связано. Можно конечно взять некоторую функцию, выбрать шаг дискретизации и записать полученные значения в массив, а потом отобразить его. Но это изврат. Может как-то использовать кривые Безье? Правда понятия не имею, как на них рисовать корень, параболу, лог и тд... Если кто рисовал функции через QPainter, подскажите как! ![]() |
|
Просмотр темы полностью (откроется в новом окне) | |
![]() |
Текстовая версия | Сейчас: 13.2.2025, 13:07 |