Descargar MetaTrader 5

Pie

Dibuja un sector coloreado de la elipse, inscrito en el rectángulo con los ángulos (x1,y1) y (x2,y2). Los límites del sector se cortan con las líneas desde el centro de la elipse, que buscan los dos puntos con las coordenadas (x3,y3) y (x4,y4).

void  Pie(
   int         x1,      // coordenada X del ángulo superior izquierdo del rectángulo
   int         y1,      // coordenada Y del ángulo superior izquierdo del rectángulo
   int         x2,      // coordenada X del ángulo inferior derecho del rectángulo
   int         y2,      // coordenada Y del ángulo inferior derecho del rectángulo
   int         x3,      // coordenada X del primer punto para encontrar el límite del arco
   int         y3,      // coordenada Y del primer punto para encontrar el límite del arco
   int         x4,      // coordenada X del segundo punto para encontrar el límite del arco
   int         y4,      // coordenada Y del segundo punto para encontrar el límite del arco
   const uint  clr,     // color de la línea
   const uint  fill_clr // color del rellenado
   );

Parámetros

x1

[in]  Coordenada X del ángulo superior izquierdo que define el rectángulo.

y1

[in]  Coordenada Y del ángulo superior izquierdo que define el rectángulo.

x2

[in]  Coordenada X del ángulo inferior derecho que define el rectángulo.

y2

[in]  Coordenada Y del ángulo inferior derecho que define el rectángulo.

x3

[in]  Coordenada X del primer punto hacia el que se traza la línea desde el centro del rectángulo para obtener el límite del arco.

y3

[in]  Coordenada Y del primer punto hacia el que se traza la línea desde el centro del rectángulo para obtener el límite del arco.

x4

[in]  Coordenada X del segundo punto hacia el que se traza la línea desde el centro del rectángulo para obtener el límite del arco.

y4

[in]  Coordenada Y del segundo punto hacia el que se traza la línea desde el centro del rectángulo para obtener el límite del arco.

clr

[in]  Color del límite del sector en formato ARGB.

fill_clr

[in]  Color del rellenado del sector en formato ARGB. Para transformar un color en el formato ARGB, use la función ColorToARGB().

Dibuja el sector coloreado de la elipse con el centro en el punto (x,y), inscrito en el rectángulo con los radios rx y ry. Los límites del sector se cortan con los rayos desde centro de la elipse, establecidos con los ángulos fi3 y fi4.

void  Pie(
   int         x,       // coordenada x del centro de la elipse
   int         y,       // coordenada Y del centro de la elipse
   int         rx,      // radio de la elipse según la coordenada X
   int         ry,      // radio de la elipse según la coordenada Y
   int         fi3,     // ángulo del rayo desde el centro de elipse, que establece el primer límite del arco
   int         fi4,     // ángulo del rayo desde el centro de la elipse, que establece el segundo límite del arco
   const uint  clr,     // color de la línea
   const uint  fill_clr // color del rellenado
   );

Dibuja el sector coloreado de la elipse con el centro en el punto (x,y), inscrito en un rectángulo con los radios rx y ry, y retorna las coordenadas de los límites del arco. Los límites del sector se cortan con los rayos desde centro de la elipse, establecidos con los ángulos fi3 y fi4.

void  Pie(
   int         x,       // coordenada x del centro de la elipse
   int         y,       // coordenada Y del centro de la elipse
   int         rx,      // radio de la elipse según la coordenada X
   int         ry,      // radio de la elipse según la coordenada Y
   int         fi3,     // ángulo del rayo desde el centro de elipse, que establece el primer límite del arco
   int         fi4,     // ángulo del rayo desde el centro de la elipse, que establece el segundo límite del arco
   int&        x3,      // coordenada X del primer límite del arco
   int&        y3,      // coordenada Y del primer límite del arco
   int&        x4,      // coordenada X del segundo límite del arco
   int&        y4,      // coordenada Y del segundo límite del arco
   const uint  clr,     // color de la línea
   const uint  fill_clr // color del rellenado
   );

Parámetros

x

[in]  Coordenada X del centro de la elipse.

y

[in]  Coordenada Y del centro de la elipse

rx

[in]  Radio de la elipse según la coordenada X, en píxeles.

ry

[in]  Radio de la elipse según la coordenada X, en píxeles.

fi3

[in]  Ángulo en radianes que establece el primer límite del arco

fi4

[in]  Ángulo en radianes que establece el segundo límite del arco

x3

[out] Variable para obtener la coordenada X del primer límite del arco.

y3

[out] Variable para obtener la coordenada Y del primer límite del arco.

x4

[out] Variable para obtener la coordenada X del segundo límite del arco.

y4

[out] Variable para obtener la coordenada Y del segundo límite del arco.

clr

[in]  Color del límite del sector en formato ARGB.

fill_clr

[in]  Color del rellenado del sector en formato ARGB. Para transformar un color en el formato ARGB, use la función ColorToARGB().

Ejemplos de llamada de los métodos de clase:

#include <Canvas\Canvas.mqh>
CCanvas canvas;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   int      Width=600;
   int      Height=400;
//--- create canvas
   if(!canvas.CreateBitmapLabel(0,0,"CirclesCanvas",30,30,Width,Height))
     {
      Print("Error creating canvas: ",GetLastError());
     }
//--- clear canvas
   canvas.Erase(clrWhite);
//--- draw rectangle
   canvas.Rectangle(215-190,215-120,215+190,215+120,clrGray);
//--- draw first pie
   canvas.Pie(215,215, 190,120,M_PI_4,2*M_PI-M_PI_4,ColorToARGB(clrBlue),ColorToARGB(clrRed));
//--- draw second pie
   canvas.Pie(215,215, 190,120,2*M_PI-M_PI_4,2*M_PI+M_PI_4,ColorToARGB(clrGreen),ColorToARGB(clrGreen));
//--- show updated canvas
   canvas.Update();   
   DebugBreak();
  }