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
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 |