Cette classe est destinée à la création programmatique d'images BMP.
Exemple :

Triangles. Méthode DrawTriangle()

Rectangles. Méthode DrawRectangle()

Secteurs. Méthode DrawCircle()

Remplissage. Méthode Fill()
Installation et utilisation :
Copiez le fichier cIntBMP.mqh dans le répertoire MQL5/Include. Outre le fichier contenant la classe, vous trouverez en pièce jointe le fichier eBMP illustrant le fonctionnement de la classe. Copiez le fichier dans le répertoire MQL5/Experts, ouvrez-le dans l'éditeur, compilez-le, puis exécutez-le sur le graphique.
Pour utiliser la classe dans votre programme :
1. Importez le fichier contenant la classe :
#include <cIntBMP.mqh>
2. Déclarez la classe, par exemple avec le nom « bmp » :
cIntBMP bmp;
3. Définir les dimensions et la couleur d’arrière-plan (méthode Create(...) ; description détaillée des méthodes ci-dessous).
4. Dessiner.
5. Enregistrer (méthode Save(...)).
6. Afficher (méthode Show(...));
À la fin du travail :
1. Supprimer l'objet graphique (Hide(...)).
2. Supprimer le fichier (Delete(...)).
Méthodes et paramètres :
- Create(int aSizeX, int aSizeY, int aBGColor) - définition des dimensions de l'image et de la couleur d'arrière-plan.
aSizeX - largeur en pixels ;
aSizeY - hauteur en pixels ;
aBGColor - couleur d'arrière-plan ;
- SetDrawWidth(int aWidth) – définit l'épaisseur du trait.
aWidth – épaisseur.
- DrawDot(int aX, int aY, int aColor) - dessine un point.
aX - coordonnée X ;
aY - coordonnée Y ;
aColor - couleur ;
- DrawLine(int aX1, int aY1, int aX2, int aY2, int aColor) - dessine une ligne.
aX1, aY1 - coordonnées d’une extrémité de la ligne ;
aX2, aY2 - coordonnées de l’autre extrémité de la ligne ;
aColor - couleur ;
- DrawRectangle(int aX1, int aY1, int aX2, int aY2, int aColor, bool aSolid=false) - dessine un rectangle.
aX1, aY1 - coordonnées d'un coin du rectangle ;
aX2, aY2 - coordonnées de l'autre extrémité, opposée en diagonale ;
aColor - couleur ;
aSolid - true : rempli, false : contour.
- DrawTriangle(int aX1, int aY1, int aX2, int aY2, int aX3, int aY3, int aColor, bool aSolid=false) - dessin d'un triangle.
aX1, aY1, aX2, aY2, aX3, aY3 – coordonnées des sommets ;
aColor – couleur ;
aSolid – true : plein, false : contour.
- DrawCircle(int aX, int aY, int aRadius1, int aRadius2, int aColor, double aRatio=1.0, double aAngleFrom=0.0, double aAngleTo, bool aSolid=false) - dessin d'un cercle.
aX - coordonnée X du centre du cercle ;
aY - coordonnée Y du centre du cercle ;
aRadius1 - rayon d'un cercle ;
aRadius2 - rayon du deuxième cercle ;
aColor - couleur ;
aRatio - proportion. Si la valeur est égale à 1, il s'agit d'un cercle ; si elle est supérieure à 1, il s'agit d'une ellipse allongée vers le haut ; si elle est inférieure à 1, il s'agit d'une ellipse allongée sur les côtés.
aAngleFrom : angle à partir duquel commence le tracé du secteur ;
aAngleTo : angle jusqu’auquel le tracé du secteur est effectué. Si aAngleFrom est égal à aAngleTo, un cercle est tracé ;
aSolid : true – cercle plein, false – contour.
- Fill(int aX, int aY, int aColor) - remplissage d’une zone monochrome.
aX, aY - coordonnées du point à partir duquel commence le remplissage ;
aColor - couleur de remplissage.
- TypeText(int aX, int aY, int aColor) - écriture de texte sur l'image.
aX, aY - coordonnées du point de départ du texte (coin supérieur gauche du texte) ;
aColor - couleur du texte.
- Save(string aFileName, bool aToImages=true) - enregistrement de l'image créée dans un fichier.
aFileName - nom du fichier. Il n'est pas obligatoire d'indiquer l'extension ;
aToImages - le fichier est enregistré dans le répertoire Images ; si la valeur est false, il est enregistré dans le répertoire Files.
- Show(int aX, int aY, string aBMPFileName, string aObjectName) - affiche l’image sur le graphique.
aX, aY - coordonnées de l’image sur le graphique ;
aBMPFileName : nom du fichier BMP à afficher ;
aObjectName : nom de l’objet graphique OBJ_BITMAP_LABEL dans lequel l’image sera affichée.
- Hide(string aObjectName) - suppression d’un objet graphique portant le nom indiqué.
aObjectName - nom de l’objet à supprimer.
- Delete(string aFileName, bool aFromImages=true) ;
Suppression d'un fichier.
aFileName : nom du fichier BMP à supprimer. Seul le nom de l'image est indiqué, sans chemin d'accès. Il n'est pas obligatoire d'indiquer l'extension ;
aFromImages : si la valeur est true, le fichier est supprimé du dossier Images ; si la valeur est false, il est supprimé du dossier Files.