Sdílet prostřednictvím


Stroke.GetGeometry Metoda

Definice

Geometry Získá aktuální Stroke.

Přetížení

Name Description
GetGeometry()

Geometry Získá aktuální Stroke.

GetGeometry(DrawingAttributes)

Geometry Získá aktuální Stroke pomocí zadaného DrawingAttributes.

GetGeometry()

Geometry Získá aktuální Stroke.

public:
 System::Windows::Media::Geometry ^ GetGeometry();
public System.Windows.Media.Geometry GetGeometry();
member this.GetGeometry : unit -> System.Windows.Media.Geometry
Public Function GetGeometry () As Geometry

Návraty

A Geometry , který představuje Stroke.

Poznámky

GetGeometry Pomocí metody získat PathGeometry k přizpůsobení tvaru Stroke. Zvažte ukládání do mezipaměti, Geometry abyste se vyhnuli vícenásobnému volání GetGeometry , což může mít vliv na výkon.

Platí pro

GetGeometry(DrawingAttributes)

Geometry Získá aktuální Stroke pomocí zadaného DrawingAttributes.

public:
 System::Windows::Media::Geometry ^ GetGeometry(System::Windows::Ink::DrawingAttributes ^ drawingAttributes);
public System.Windows.Media.Geometry GetGeometry(System.Windows.Ink.DrawingAttributes drawingAttributes);
member this.GetGeometry : System.Windows.Ink.DrawingAttributes -> System.Windows.Media.Geometry
Public Function GetGeometry (drawingAttributes As DrawingAttributes) As Geometry

Parametry

drawingAttributes
DrawingAttributes

To DrawingAttributes určuje Geometry .Stroke

Návraty

A Geometry , který představuje Stroke.

Příklady

Následující příklad ukazuje, jak nakreslit kruh na každém StylusPoint z nich Stroke. Pokud je vlastnost nastavena FitToCurve na true, GetBezierStylusPoints slouží k získání pera bodů. V opačném případě se StylusPoints vlastnost použije.

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);
    }
}
Protected Overrides Sub DrawCore(ByVal context As DrawingContext, _
        ByVal overridedAttributes As DrawingAttributes)

    ' Draw the stroke. Calling base.DrawCore accomplishes the same thing.
    Dim geometry As Geometry = GetGeometry(overridedAttributes)
    context.DrawGeometry(New SolidColorBrush(overridedAttributes.Color), Nothing, geometry)

    Dim points As StylusPointCollection

    ' Get the stylus points used to draw the stroke.  The points used depends on
    ' the value of FitToCurve.
    If Me.DrawingAttributes.FitToCurve Then
        points = Me.GetBezierStylusPoints()
    Else
        points = Me.StylusPoints
    End If

    ' Draw a circle at each stylus point.
    Dim p As StylusPoint
    For Each p In points
        context.DrawEllipse(Nothing, New Pen(Brushes.Black, 1), CType(p, Point), 5, 5)
    Next p

End Sub

Poznámky

Metoda GetGeometry používá Width, Height, FitToCurveStylusTip a StylusTipTransform vlastnosti drawingAttributes určit Geometry. Zvažte ukládání do mezipaměti, Geometry abyste se vyhnuli vícenásobnému volání GetGeometry , což může mít vliv na výkon.

Platí pro