class CCanvas
Класс для работы с динамическими растровыми ресурсами на графиках торгового терминала
Сообщите нам, если считаете, что материал размещён без разрешения.
Обращение по товару «canvas.mqh» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Canvas.mqh — это библиотека языка MQL5 для работы с динамическими растровыми ресурсами на графиках торгового терминала MetaTrader. Она предоставляет класс CCanvas, позволяющий создавать bitmap-объекты и bitmap-метки на ценовых графиках, привязанные к динамическим ресурсам с пиксельными данными.
Библиотека поддерживает рисование графических примитивов (линии, прямоугольники, круги, эллипсы, дуги, многоугольники и треугольники) как обычных, так и с сглаживанием. Доступны операции с пикселями: установка, считывание и заливка замкнутой области по точке. Также предусмотрены функции для работы со шрифтом и вывода текста на холсте.
Класс CCanvas позволяет создавать ресурсы в различных цветовых форматах (XRGB, ARGB), изменять размер, обновлять отображение на графике, загружать изображения из BMP-файлов и управлять прозрачностью. Класс BitmapHeader служит вспомогательным средством для описания заголовка растрового изображения.
Классов: 2 · методов: 58 · конструкторов: 1 · деструкторов: 1 · отдельных функций: 0
class CCanvas
Класс для работы с динамическими растровыми ресурсами на графиках торгового терминала
class BitmapHeader
Класс-заголовок для растрового изображения BMP
CCanvas(void)
Конструктор класса CCanvas
~CCanvas(void)
Деструктор класса CCanvas
bool Create(const string name,const int width,const int height,ENUM_COLOR_FORMAT clrfmt)
Создание динамического растрового ресурса с заданными размерами и форматом цвета
bool CreateBitmap(const string name,const datetime time,const double price, const int width,const int height,ENUM_COLOR_FORMAT clrfmt)
Создание bitmap-объекта на графике с привязкой к динамическому ресурсу по времени и цене
bool CreateBitmap(const long chart_id,const int subwin,const string name, const datetime time,const double price,const int width,const int height, ENUM_COLOR_FORMAT clrfmt)
Создание bitmap-объекта на указанном графике и подокне с привязкой к ресурсу
bool CreateBitmapLabel(const string name,const int x,const int y, const int width,const int height,ENUM_COLOR_FORMAT clrfmt)
Создание bitmap-метки на графике с привязкой к ресурсу по координатам
bool CreateBitmapLabel(const long chart_id,const int subwin,const string name, const int x,const int y,const int width,const int height, ENUM_COLOR_FORMAT clrfmt)
Создание bitmap-метки на указанном графике и подокне по координатам
void Destroy(void)
Удаление объекта с графика и освобождение динамического ресурса
string ChartObjectName(void)
Получение имени объекта на графике
string ResourceName(void)
Получение имени динамического ресурса
int Width(void)
Получение ширины холста
int Height(void)
Получение высоты холста
void Update(const bool redraw)
Обновление отображения объекта на графике
bool Resize(const int width,const int height)
Изменение размера холста
void Erase(const uint clr)
Заливка всех пикселей холста указанным цветом
uint PixelGet(const int x,const int y)
Получение цвета пикселя по координатам
void PixelSet(const int x,const int y,const uint clr)
Установка цвета пикселя по координатам
void LineVertical(int x,int y1,int y2,const uint clr)
Рисование вертикальной линии
void LineHorizontal(int x1,int x2,int y,const uint clr)
Рисование горизонтальной линии
void Line(int x1,int y1,int x2,int y2,const uint clr)
Рисование линии между двумя точками
void Polyline(int &x[],int &y[],const uint clr)
Рисование полилинии из массива точек
void Polygon(int &x[],int &y[],const uint clr)
Рисование замкнутого многоугольника из массива точек
void Rectangle(int x1,int y1,int x2,int y2,const uint clr)
Рисование прямоугольника
void Triangle(int x1,int y1,int x2,int y2,int x3,int y3,const uint clr)
Рисование треугольника
void Circle(int x,int y,int r,const uint clr)
Рисование окружности
void Ellipse(int x1,int y1,int x2,int y2,const uint clr)
Рисование эллипса
void Arc(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4,const uint clr)
Рисование дуги эллипса по четырём опорным точкам
void Arc(int x,int y,int rx,int ry,double fi3,double fi4,const uint clr)
Рисование дуги эллипса по радиусам и углам
void Arc(int x,int y,int rx,int ry,double fi3,double fi4,int &x3,int &y3,int &x4,int &y4,const uint clr)
Рисование дуги эллипса с определением точек пересечения лучей
void Pie(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4,const uint clr,const uint fill_clr)
Рисование сектора эллипса по четырём опорным точкам
void Pie(int x,int y,int rx,int ry,double fi3,double fi4,const uint clr,const uint fill_clr)
Рисование сектора эллипса по радиусам и углам
void FillRectangle(int x1,int y1,int x2,int y2,const uint clr)
Рисование заполненного прямоугольника
void FillTriangle(int x1,int y1,int x2,int y2,int x3,int y3,const uint clr)
Рисование заполненного треугольника
void FillPolygon(int &x[],int &y[],const uint clr)
Рисование заполненного многоугольника
void FillCircle(int x,int y,int r,const uint clr)
Рисование заполненной окружности
void FillEllipse(int x1,int y1,int x2,int y2,const uint clr)
Рисование заполненного эллипса
void Fill(int x,int y,const uint clr)
Заливка замкнутой области цветом по точке
void PixelSetAA(const double x,const double y,const uint clr)
Установка пикселя с сглаживанием
void LineAA(const int x1,const int y1,const int x2,const int y2,const uint clr,const uint style)
Рисование линии с сглаживанием и стилем
void PolylineAA(int &x[],int &y[],const uint clr,const uint style)
Рисование полилинии с сглаживанием и стилем
void PolygonAA(int &x[],int &y[],const uint clr,const uint style)
Рисование многоугольника с сглаживанием и стилем
void TriangleAA(const int x1,const int y1,const int x2,const int y2,const int x3,const int y3, const uint clr,const uint style)
Рисование треугольника с сглаживанием и стилем
void CircleAA(const int x,const int y,const double r,const uint clr)
Рисование окружности с сглаживанием
bool FontSet(const string name,const int size,const uint flags,const uint angle)
Установка шрифта с заданными параметрами
bool FontNameSet(string name)
Установка имени шрифта
bool FontSizeSet(int size)
Установка размера шрифта
bool FontFlagsSet(uint flags)
Установка флагов шрифта
bool FontAngleSet(uint angle)
Установка угла наклона текста
void FontGet(string &name,int &size,uint &flags,uint &angle)
Получение параметров текущего шрифта
string FontNameGet(void)
Получение имени текущего шрифта
int FontSizeGet(void)
Получение размера текущего шрифта
uint FontFlagsGet(void)
Получение флагов текущего шрифта
uint FontAngleGet(void)
Получение угла наклона текущего текста
void TextOut(int x,int y,string text,const uint clr,uint alignment)
Вывод текста на холсте
int TextWidth(const string text)
Получение ширины текста
int TextHeight(const string text)
Получение высоты текста
void TextSize(const string text,int &width,int &height)
Получение размеров текста (ширина и высота)
uint GetDefaultColor(const int i)
Получение стандартного цвета по индексу
void TransparentLevelSet(const uchar value)
Установка уровня прозрачности пикселей
bool LoadFromFile(const string filename)
Загрузка растрового изображения из файла
********Показано первые 50% кода (символов: 138121)
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.