Compartir a través de


Método GraphicsPath::Outline (gdipluspath.h)

El método GraphicsPath::Outline transforma y aplana esta ruta de acceso y, a continuación, convierte los puntos de datos de esta ruta de acceso para que representen solo el contorno de la ruta de acceso.

Sintaxis

Status Outline(
  [in] const Matrix *matrix,
  [in] REAL         flatness
);

Parámetros

[in] matrix

Tipo: matriz const *

Opcional. Puntero a un objeto Matrix que especifica la transformación. Si este parámetro es NULL, no se aplica ninguna transformación. El valor predeterminado es NULL.

[in] flatness

Tipo: REAL

Opcional. Número real que especifica el error máximo entre la ruta de acceso y su aproximación plana. Reducir la plana aumenta el número de segmentos de línea en la aproximación. El valor predeterminado es FlatnessDefault, que es una constante definida en Gdiplusenums.h.

Valor devuelto

Tipo: Estado

Si el método se realiza correctamente, devuelve Ok, que es un elemento de la enumeración Status .

Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .

Comentarios

Un objeto GraphicsPath almacena una colección de puntos de datos que representan líneas y curvas. El método GraphicsPath::Outline cambia esos puntos de datos y se pierden los puntos de datos originales.

Ejemplos

En el ejemplo siguiente se crea un objeto GraphicsPath y se llama al método GraphicsPath::AddClosedCurve para agregar una spline cardinal cerrada a la ruta de acceso. El código llama al método GraphicsPath::Widen para ampliar la ruta de acceso y, a continuación, dibuja la ruta de acceso. A continuación, el código llama al método Outline de la ruta de acceso. El código llama al método TranslateTransform de un objeto Graphics para que la ruta de acceso dibujada por la llamada subsiguiente a DrawPath se sitá a la derecha de la primera ruta de acceso.


VOID OutlineExample(HDC hdc)
{
   Graphics graphics(hdc);

   Pen bluePen(Color(255, 0, 0, 255));
   Pen greenPen(Color(255, 0, 255,  0), 10);

   PointF points[] = {
      PointF(20.0f, 20.0f),
      PointF(160.0f, 100.0f),
      PointF(140.0f, 60.0f),
      PointF(60.0f, 100.0f)};

   GraphicsPath path;
   path.AddClosedCurve(points, 4);

   path.Widen(&greenPen);
   graphics.DrawPath(&bluePen, &path);

   path.Outline();

   graphics.TranslateTransform(180.0f, 0.0f);
   graphics.DrawPath(&bluePen, &path);
}

Requisitos

   
Cliente mínimo compatible Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado gdipluspath.h (incluya Gdiplus.h)
Library Gdiplus.lib
Archivo DLL Gdiplus.dll

Consulte también

Recorte con una región

Crear y dibujar trazados

Creación de un degradado de trazado

Graphicspath

GraphicsPath::Flatten

GraphicsPath::Warp

GraphicsPath::Widen

Matriz

Paths