Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Facebook!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Bibliotheken

cIntBMP - eine Bibliothek für die Erstellung von Bildern im BMP-Format - Bibliothek für den MetaTrader 5

Ansichten:
964
Rating:
(31)
Veröffentlicht:
2016.08.05 15:41
Aktualisiert:
2016.11.22 07:34
\MQL5\Include\
cintbmp.mqh (39.29 KB) ansehen
\MQL5\Experts\
ebmp.mq5 (48.02 KB) ansehen
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Diese Klasse wurde für die Erstellung von bmp-Bildern entwickelt.

Beispiel:

cIntBMP - Dreiecke. Die Methode DrawTriangle()

Dreiecke. Die Methode DrawTriangle()

Rechtsecke. Die Methode DrawRectangle()

Rechtsecke. Die Methode DrawRectangle()


cIntBMP - Kreise. Die Methode DrawCircle()

Kreise. Die Methode DrawCircle()


cIntBMP - Füllung. Die Methode Fill()

Füllung. Die Methode Fill()

Installation und Verwendung:

Kopieren Sie die Datei cIntBMP.mqh in das Verzeichnis MQL5/Include. Außer der Datei mit der Klasse finden Sie eine eBMP-Datei im Anhang, welche die Arbeit der Klasse demonstriert. Die Datei muss in das Verzeichnis MQL5/Experts kopiert, im Editor geöffnet, kompiliert und im Chart gestartet werden.

Für die Verwendung der Klasse in Ihrem Programm:

1. Die Datei mit der Klasse hinzufügen:

#include <cIntBMP.mqh>

2. Die Variable der cIntBMP Klasse deklarieren, z.B. "bmp":

cIntBMP bmp;

3. Größe und Hintergrundfarbe angeben (die Methode Create(...), die Beschreibung siehe unten).

4. Zeichnen.

5. Speichern (die Methode Save(...)).

6. Anzeigen (die Methode Show(...));

Beim Beenden:

1. Löschen Sie das grafische Objekt (Hide(...)).

2. Datei löschen (Delete(...)).

Methoden und Parameter:

  • Create(int aSizeX, int aSizeY, int aBGColor) - setzt die Bildgröße und die Hintergrundfarbe.
    aSizeX - Breite in Pixel;
    aSizeY - Höhe in Pixel;
    aBGColor - Hintergrundfarbe;
  • SetDrawWidth(int aWidth) - setzt die Linienstärke.
    aWidth - Stärke.
  • DrawDot(int aX, int aY, int aColor) - zeichnet einen Punkt ein.
    aX - X-Koordinate;
    aY - Y-Koordinate;
    aColor - Farbe;
  • DrawLine(int aX1,int aY1, int aX2, int aY2, int aColor) - zeichnet eine Linie.
    aX1, aY1 - Koordinaten eines Endes der Linie;
    aX2, aY2 - Koordinaten des anderen Endes der Linie;
    aColor - Farbe;
  • DrawRectangle(int aX1, int aY1, int aX2, int aY2, int aColor, bool aSolid=false) - zeichnet Rechtecke.
    aX1, aY1 - Koordinaten der linken oberen Ecke des Rechtecks;
    aX2, aY2 - Koordinaten des rechten unteren Endes;
    aColor - Farbe;
    aSolid - true - Kreis, false - Kontur.
  • DrawTriangle(int aX1, int aY1, int aX2, int aY2, int aX3, int aY3, int aColor, bool aSolid=false) - zeichnet ein Dreieck.
    aX1, aY1, aX2, aY2, aX3, aY3 - Koordinaten von Eckpunkten;
    aColor - Farbe;
    aSolid - true - Kreis, false - Kontur.
  • DrawCircle(int aX, int aY, int aRadius1, int aRadius2, int aColor, double aRatio=1.0, double aAngleFrom=0.0, double aAngleTo, bool aSolid=false) - Kreis zeichnen.
    aX - X-Koordinate des Kreismittelpunktes;
    aY - Y-Koordinate des Kreismittelpunktes;
    aRadius1 - Radius eines Kreises;
    aRadius2 - Radius des zweiten Kreises;
    aColor - Farbe;
    aRatio - Relation. Beim Wert 1 - Kreis, bei einem Wert größer als 1 - Ellipse nach oben gezogen, kleiner als 1 - zur Seite gezogen.
    aAngleFrom - Ecke, ab welcher das Segment gezeichnet wird;
    aAngleTo - Ecke bis welcher das Segment gezeichnet wird. Wenn aAngleFrom gleich aAngleTo ist, wird ein Kreis gezeichnet;
    aSolid - true - Kreis, false - Kontur.
  • Fill(int aX, int aY, int aColor) - Füllung eines einfarbigen Bereichs.
    aX, aY - Koordinaten des Punktes ab welchen die Füllung beginnt;
    aColor - Füllfarbe.
  • TypeText(int aX, int aY, int aColor) - Text auf dem Bild schreiben.
    aX, aY - Koordinaten des Punktes, von welchem der Text beginnt (obere linke Ecke des Textes);
    aColor - Textfarbe.
  • Save(string aFileName, bool aToImages=true) - das erstellte Bild in einer Datei speichern.
    aFileName - Dateiname. Es ist nicht obligatorisch, die Erweiterung anzugeben;
    aToImages - die Datei wird im Verzeichnis Images gespeichert, false - die Datei wird im Verzeichnis Files gespeichert.
  • Show(int aX, int aY, string aBMPFileName, string aObjectName) - zeigt das Bild auf dem Chart an.
    aX, aY - Koordinaten des Bildes auf dem Chart;
    aBMPFileName - der Name der bmp-Datei;
    aObjectName - Name des grafischen Objekts OBJ_BITMAP_LABEL, in welchem das Bild angezeigt wird.
  • Hide(string aObjectName) - löscht das grafische Objekt mit dem angegebenen Namen.
    aObjectName - Name des zu löschenden Objekts.
  • Delete(string aFileName, bool aFromImages=true);
    Datei löschen.
    aFileName - Name der zu löschenden bmp-Datei. Angegeben wird nur der Bildname ohne Pfad. Es ist nicht obligatorisch, die Erweiterung anzugeben. aFromImages - wenn true, die Datei wird aus dem Ordner Images gelöscht, wenn false - aus Files.

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/251

MQL5 Wizard - Handelsignale auf der Basis der Kreuzung des Preises mit dem MA-Indikator MQL5 Wizard - Handelsignale auf der Basis der Kreuzung des Preises mit dem MA-Indikator

Handelsignale auf der Basis der Kreuzung des Preises mit dem MA-Indikator "Signals based on price crossover with MA" (Klasse CSignalMA in der Standardbibliothek).

Mehrwährungsindikator U.S. Dollar Index iUSDx Mehrwährungsindikator U.S. Dollar Index iUSDx

Ein Beispiel für die Anwendung des Panels "Control panel MCM" für die Erstellung von Mehrwährungsindikatoren. Als Beispiel ist hier der Mehrwährungsindikator "Dollar-Index" angeführt.

Professioneller ZigZag Professioneller ZigZag

Ein ZigZag Indikator ohne Nachteile des typischen ZigZag.

ColorXdinMA_HTF ColorXdinMA_HTF

Der Indikator ColorXdinMA mit der Veränderungsmöglichkeit des Timeframes des Indikators in den Eingangsparametern.