Geometry 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.
public ref class Geometry : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Geometry : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Geometry : DependencyObject
Public Class Geometry
Inherits DependencyObject
- Ereditarietà
- Derivato
- Attributi
Commenti
Per le proprietà che accettano un oggetto Geometry, è necessario specificare un tipo derivato nonabstract di Geometry, come elemento oggetto per XAML o come istanza definita per il codice. Per informazioni dettagliate, vedere le pagine di riferimento per EllipseGeometry, GeometryGroup, LineGeometry, PathGeometry o RectangleGeometry.
Le geometrie possono essere concettualizzate come "semplici" o "complesse". EllipseGeometry, LineGeometry e RectangleGeometry sono le geometrie semplici, che specificano la forma geometrica come un elemento con proprietà di base della coordinata o della dimensione. GeometryGroup e PathGeometry sono le geometrie complesse. GeometryGroup combina altre geometrie che contiene come oggetti figlio. PathGeometry usa un set di elementi di definizione del percorso di figura/segmento annidati o una sintassi di stringa compatta che viene in genere restituita dalle finestre di progettazione per descrivere un percorso complesso per la geometria.
Un oggetto Geometry non definisce completamente il proprio rendering, in quanto non è un OGGETTO UIElement stesso e deve essere fornito come valore di proprietà per un OGGETTO UIElement per causare un effetto di rendering. In genere, una geometria viene fornita come dati per un percorso (che è un tipo di forma).
La proprietà PathIcon.Data accetta un oggetto Geometry. In pratica, è in genere necessario specificare un oggetto PathGeometry , con il valore della proprietà Figures espresso nella sintassi di stringa compatta per un percorso.
GeometryCollection è una raccolta fortemente tipizzata per gli elementi Geometry. La proprietà GeometryGroup.Children utilizza un oggetto GeometryCollection.
Geometria e forma
La classe Shape ha un oggetto Fill, Stroke e altre proprietà di rendering mancanti in Geometry e nelle relative classi derivate. La classe Shape è un FrameworkElement e quindi partecipa al sistema di layout; Le classi derivate possono essere usate come contenuto di qualsiasi elemento che supporta gli elementi figlio UIElement . La classe Geometry, d'altra parte, definisce semplicemente la geometria come primitiva grafica e non può eseguirne il rendering. È possibile usare Geometry come tipo di proprietà per le proprietà degli elementi dell'interfaccia utente personalizzate in cui le espressioni primitive grafiche di base abilitate da Geometry sono utili come definizione.
Geometria per UIElement.Clip
Per specificare un valore per la proprietà UIElement.Clip nel Windows Runtime, è necessario usare in modo specifico un oggetto RectangleGeometry, non qualsiasi tipo derivato da Geometry. Se stai eseguendo la conversione di codice o XAML da altri framework XAML, vedi se puoi modificare uiElement.Clip per usare RectangleGeometry. In caso contrario, potrebbe essere necessario modificare la relazione di ordine Z e usare tecniche come una sovrimpressione di un oggetto ImageBrush con un'origine RenderTargetBitmap modificata con trasparenza alfa per le parti di "ritaglio".
Classi derivate geometry
Geometry è la classe padre per diverse classi derivate che definiscono diverse categorie di geometrie pratiche:
- Ellipsegeometry
- GeometryGroup : può essere usato per specificare più geometrie come Elementi figlio
- LineGeometry
- PathGeometry : usare questo tipo per qualsiasi geometria che non può essere espressa dagli altri tipi di geometria "semplici"
- RectangleGeometry
Proprietà
Bounds |
Ottiene un rect che specifica il rettangolo di selezione allineato all'asse della geometria. |
Dispatcher |
Restituisce |
DispatcherQueue |
Ottiene l'oggetto a cui è associato l'oggetto |
Empty |
Ottiene un oggetto geometry vuoto. |
StandardFlatteningTolerance |
Ottiene la tolleranza standard utilizzata per l'approssimazione poligonale. |
Transform |
Ottiene o imposta l'oggetto Transform applicato a un oggetto Geometry. |
TransformProperty |
Identifica la proprietà di dipendenza Transform . |
Metodi
ClearValue(DependencyProperty) |
Cancella il valore locale di una proprietà di dipendenza. (Ereditato da DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva. (Ereditato da DependencyObject) |
GetValue(DependencyProperty) |
Restituisce il valore effettivo corrente di una proprietà di dipendenza da dependencyObject. (Ereditato da DependencyObject) |
ReadLocalValue(DependencyProperty) |
Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale. (Ereditato da DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Registra una funzione di notifica per l'ascolto delle modifiche apportate a una dipendenza specifica in questa istanza di DependencyObject . (Ereditato da DependencyObject) |
SetValue(DependencyProperty, Object) |
Imposta il valore locale di una proprietà di dipendenza su dependencyObject. (Ereditato da DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback. (Ereditato da DependencyObject) |