Stroke.GetGeometry Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Overloads
| Name | Description |
|---|---|
| GetGeometry() | |
| GetGeometry(DrawingAttributes) |
Hiermee haalt u de Geometry huidige Stroke op met behulp van de opgegeven DrawingAttributes. |
GetGeometry()
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
Retouren
Opmerkingen
Gebruik de GetGeometry methode om de PathGeometry vorm van het Strokebestand aan te passen. Overweeg de cache in de Geometry cache te plaatsen om bellen meerdere keren te voorkomen GetGeometry , wat de prestaties kan beïnvloeden.
Van toepassing op
GetGeometry(DrawingAttributes)
Hiermee haalt u de Geometry huidige Stroke op met behulp van de opgegeven 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
Parameters
- drawingAttributes
- DrawingAttributes
De DrawingAttributes die bepaalt de Geometry van de Stroke.
Retouren
Voorbeelden
In het volgende voorbeeld ziet u hoe u een cirkel tekent op elk StylusPoint van een Stroke. Als de FitToCurve eigenschap is ingesteld op true, wordt de GetBezierStylusPoints eigenschap gebruikt om de styluspunten op te halen. Anders wordt de StylusPoints eigenschap gebruikt.
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
Opmerkingen
De GetGeometry methode maakt gebruik van de Width, Height, en FitToCurveStylusTipStylusTipTransform eigenschappen van drawingAttributes om de .Geometry Overweeg de cache in de Geometry cache te plaatsen om bellen meerdere keren te voorkomen GetGeometry , wat de prestaties kan beïnvloeden.