InkStrokeRenderingSegment Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Un singolo segmento di un tratto input penna completo.
Un singolo segmento è costituito da un punto iniziale, da un punto finale e da due punti di controllo di Bezier. Tuttavia, per una serie di segmenti che costituiscono un tratto, l'ultimo punto del segmento precedente è il primo punto del segmento corrente. Ciò significa che per rappresentare un tratto completo è necessario solo il punto finale per ogni segmento.
Ogni tratto è un vettore di oggetti InkStrokeRenderingSegment con il primo segmento identificato da un singolo punto iniziale e da tutti i segmenti rimanenti identificati da un punto finale e da due punti di controllo di Bezier.
public ref class InkStrokeRenderingSegment sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class InkStrokeRenderingSegment final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class InkStrokeRenderingSegment
Public NotInheritable Class InkStrokeRenderingSegment
- Ereditarietà
- Attributi
Requisiti Windows
Famiglia di dispositivi |
Windows 10 (è stato introdotto in 10.0.10240.0 - for Xbox, see UWP features that aren't yet supported on Xbox)
|
API contract |
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)
|
Esempio
La funzione nell'esempio seguente illustra come derivare una curva di Bezier cubica per ogni segmento di un tratto input penna (stroke
).
public static Windows.UI.Xaml.Shapes.Path CreateBezierPath(Windows.UI.Input.Inking.InkStroke stroke)
{
// Create Bezier geometries using information provided by the stroke's segments
var figure = new Windows.UI.Xaml.Media.PathFigure();
var segments = stroke.GetRenderingSegments().GetEnumerator();
segments.MoveNext();
// First segment is degenerate and corresponds to initial position
figure.StartPoint = segments.Current.Position;
// Now loop through all remaining segments
while (segments.MoveNext())
{
var bs = new Windows.UI.Xaml.Media.BezierSegment();
bs.Point1 = segments.Current.BezierControlPoint1;
bs.Point2 = segments.Current.BezierControlPoint2;
bs.Point3 = segments.Current.Position;
figure.Segments.Add(bs);
}
// Create and initialize the data structures necessary to render the figure
var geometry = new Windows.UI.Xaml.Media.PathGeometry();
geometry.Figures.Add(figure);
var path = new Windows.UI.Xaml.Shapes.Path();
path.Data = geometry;
// Set the stroke's graphical properties, which are controlled by the Path object
path.Stroke = new Windows.UI.Xaml.Media.SolidColorBrush(stroke.DrawingAttributes.Color);
path.StrokeThickness = stroke.DrawingAttributes.Size.Width;
path.StrokeLineJoin = Windows.UI.Xaml.Media.PenLineJoin.Round;
path.StrokeStartLineCap = Windows.UI.Xaml.Media.PenLineCap.Round;
return path;
}
Commenti
Impostare la proprietà FitToCurve di DrawingAttributes su true se si desidera eseguire il rendering di un tratto input penna con curve di Bezier cubiche. In caso contrario, viene eseguito il rendering del tratto con segmenti di linea retta.
Proprietà
BezierControlPoint1 |
Ottiene il primo punto di controllo per la curva di Bézier. |
BezierControlPoint2 |
Ottiene il secondo punto di controllo per la curva di Bézier. |
Position |
Ottiene il punto finale del segmento. |
Pressure |
Ottiene la pressione del contatto sulla superficie del digitalizzatore. |
TiltX |
Ottiene l'inclinazione del contatto lungo l'asse x. |
TiltY |
Ottiene l'inclinazione del contatto lungo l'asse y. |
Twist |
Ottiene la rotazione del contatto lungo l'asse rotazionale. |
Si applica a
Vedi anche
- Interazioni tramite penna e stilo
- Introduzione: Supportare l'input penna nell'app UWP
- Esempio di analisi dell'input penna (di base) (C#)
- Esempio di riconoscimento della grafia input penna (C#)
- Salvare e caricare tratti input penna da un file ISF (Ink Serialized Format)
- Salvare e caricare tratti input penna dagli Appunti
- Esempio di orientamento e posizione della barra degli strumenti input penna (di base)
- Esempio di orientamento e posizione della barra degli strumenti input penna (dinamico)
- Esempio di app Coloring Book
- Esempio FamilyNotes
- Input: Esempio di input penna semplificato
- Esempio di input penna semplice (C#/C++)
- Esempio di input penna complesso (C++)
- Esempio di analisi dell'input penna