Stroke.GetBezierStylusPoints Method ()

 

Returns the stylus points the Stroke uses when FitToCurve is true.

Namespace:   System.Windows.Ink
Assembly:  PresentationCore (in PresentationCore.dll)

public StylusPointCollection GetBezierStylusPoints()

Return Value

Type: System.Windows.Input.StylusPointCollection

A StylusPointCollection that contains the stylus points along the spine of a Stroke when FitToCurve is true

The GetBezierStylusPoints method returns a new StylusPointCollection that contains the stylus points that the Stroke uses when the FitToCurve property on the DrawingAttributes property is set to true. To get the stylus points that are used when FitToCurve is set to false, use the StylusPoints property.

The following example demonstrates how to draw a circle at each StylusPoint of a Stroke. If the FitToCurve property is set to true, the GetBezierStylusPoints is used to get the stylus points. Otherwise, the StylusPoints property is used.

protected override void DrawCore(DrawingContext context, DrawingAttributes overrides)
{
    // Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Geometry geometry = GetGeometry(overrides);
    context.DrawGeometry(new SolidColorBrush(overrides.Color), null, geometry);

    StylusPointCollection points;

    // Get the stylus points used to draw the stroke.  The points used depends on
    // the value of FitToCurve.
    if (this.DrawingAttributes.FitToCurve)
    {
        points = this.GetBezierStylusPoints();
    }
    else
    {
        points = this.StylusPoints;
    }

    // Draw a circle at each stylus point.
    foreach (StylusPoint p in points)
    {
        context.DrawEllipse(null, new Pen(Brushes.Black, 1), (Point)p, 5, 5);
    }

}

.NET Framework
Available since 3.0
Return to top
Show: