Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
речи вроде про "пиксели" не шла.
Вы подали только массив Y. Значит по Х - это простой порядковый номер. Выдал GetX верно.
В описании чётко написано "координаты". Я понимаю, что координаты - это пиксели.
нет, координаты с пикселями не должны быть связаны.
Тогда нет взаимосвязи с тем, что отрисовано (фактическое значение double) и координатами в пикселях. Подожду разъяснений.
не, тут всё верно продумано.
Ведь вы дали только один массив - Y. Ему пришлось автовычислить точки для Х как порядковые.
Подайте в CurveAdd двумерный массив. например по Х пусть будет время (что в принципе логично для получения тиковых значений). Посмотрим на результат.
---
Вот получить пиксельные координаты - это уже наверно другой вопрос. Посмотрите в код отрисовки (или где расчёт точек курвы). Как он пиксели считает. Может тот массив хранится.
m_canvas.FontSizeSet(m_history.name_size);
if(m_canvas.TextWidth(name)>m_history.name_width)
{
while(m_canvas.TextWidth(name+"...")>m_history.name_width)
name=StringSubstr(name,0,StringLen(name)-1);
name+="...";
}
Обнаружил багу - бесконечный цикл while при небольшой m_history.name_width
Как вообще отключить эту History справа?
Спасибо за сообщение, исправим. Прямого способа отключить историю на данный момент нет, но можно выставить размер имени кривой HistoryNameWidth и её обозначение HistorySymbolSize в ноль.
@Roman Konopelko
HistoryNameWidth- да, но уже после поправки этого зацикла
---
сделаете ли виртуальные функции?
Мне нужно у себя в потомке переопеделить функцию отрисовки гистограммы - понадобилось два цвета - для положительных и отрицательных значений. А все не виртуал, переопределить нельзя (
@Roman Konopelko
Растолкуйте, пожалуйста, как читать
GetX
Записывает координаты X для всех точек кривой в массив
- это всё-таки КООРДИНАТЫ (x,y) в пикселях или это переданные значения для построения кривой?
@Roman Konopelko
Растолкуйте, пожалуйста, как читать
GetX
Записывает координаты X для всех точек кривой в массив
- это всё-таки КООРДИНАТЫ (x,y) в пикселях или это переданные значения для построения кривой?
Методы GetX и GetY реализованые в классе CCurve и позволяют получить координаты кривой, которые использовались при её создание.
@Roman Konopelko
в CalculateXAxis()
не хватает формата как для дата/время TimeToString
имеем только форматирование для double значений StringFormat.
string xformat=m_x.ValuesFormat();
m_xvalues[i]=(xformat==NULL) ? StringFormat("%7g",x) : StringFormat(xformat,x);
варианты:
- добавить переменную CAxis::m_bdatetime - которая скажет что надо вызывать функцию TimeToString при форматировании вместо StringFormat
- или вынести
string xformat=m_x.ValuesFormat();
m_xvalues[i]=(xformat==NULL) ? StringFormat("%7g",x) : StringFormat(xformat,x);
в отдельную виртуальную функцию, и дать пользователю переопределять её.
Заранее спасибо.
PS. Какие новости по классу и предыдущим багам?
Будут новинки или правки в новом билде?
Если есть новые версии, то скидывайте их тут, не дожидаясь публикации билда.