Stroke.GetGeometry メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
GetGeometry() | |
GetGeometry(DrawingAttributes) |
指定した Geometry を使用して、現在の Stroke の 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
戻り値
注釈
メソッドを GetGeometry 使用して を PathGeometry 取得し、 の形状をカスタマイズします Stroke。 をキャッシュして Geometry 複数回呼び出 GetGeometry さないようにすることを検討してください。これはパフォーマンスに影響を与える可能性があります。
適用対象
GetGeometry(DrawingAttributes)
指定した Geometry を使用して、現在の Stroke の 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
パラメーター
- drawingAttributes
- DrawingAttributes
DrawingAttributes の Geometry を決定する Stroke。
戻り値
例
次の例では、 のそれぞれに StylusPoint 円を描画する方法を Stroke示します。 プロパティが FitToCurve に true
設定されている場合は、 GetBezierStylusPoints を使用してスタイラス ポイントを取得します。 それ以外の場合は、 StylusPoints プロパティが使用されます。
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
注釈
メソッドはGetGeometry、 の Width、Height、FitToCurveStylusTipおよび StylusTipTransform プロパティdrawingAttributes
を使用して を決定しますGeometry。 をキャッシュして Geometry 複数回呼び出 GetGeometry さないようにすることを検討してください。これはパフォーマンスに影響を与える可能性があります。
適用対象
.NET