Share via


Geometry Classe

Définition

Fournit une classe de base pour les objets qui définissent des formes géométriques. Les objets Geometry peuvent être utilisés pour les régions de découpage et comme définitions de géométrie pour le rendu de données graphiques bidimensionnelles sous forme de chemin d’accès.

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
Héritage
Object Platform::Object IInspectable DependencyObject Geometry
Dérivé
Attributs

Remarques

Pour les propriétés qui prennent une géométrie, vous devez spécifier un type dérivé nonabstract de Geometry, en tant qu’élément objet pour XAML ou en tant que instance défini pour le code. Pour plus d’informations, consultez les pages de référence pour EllipseGeometry, GeometryGroup, LineGeometry, PathGeometry ou RectangleGeometry.

Les géométries peuvent être conceptualisées comme étant « simples » ou « complexes ». EllipseGeometry, LineGeometry et RectangleGeometry sont les géométries simples, qui spécifient la forme géométrique en tant qu’élément avec des propriétés de coordonnées ou de dimension de base. GeometryGroup et PathGeometry sont les géométries complexes. GeometryGroup combine d’autres géométries qu’il contient en tant qu’objets enfants. PathGeometry utilise un ensemble d’éléments de définition de chemin d’accès de segment/figure imbriqués, ou une syntaxe de chaîne compacte qui est généralement sortie par les concepteurs, pour décrire un chemin complexe pour la géométrie.

Une géométrie ne définit pas entièrement son propre rendu, car il ne s’agit pas d’un UIElement lui-même et doit être fourni en tant que valeur de propriété pour un UIElement afin de provoquer un effet de rendu. En règle générale, une géométrie est fournie en tant que données pour un chemin d’accès (qui est une sorte de forme).

La propriété PathIcon.Data prend une géométrie. Dans la pratique, vous spécifiez généralement une PathGeometry pour cela, avec sa valeur de propriété Figures exprimée dans la syntaxe de chaîne compacte pour un chemin d’accès.

GeometryCollection est une collection fortement typée pour les éléments Geometry. La propriété GeometryGroup.Children utilise une GeometryCollection.

Géométrie et forme

La classe Shape a une propriété Fill, Stroke et d’autres propriétés de rendu qui ne font pas défaut à Geometry et à ses classes dérivées. La classe Shape est un FrameworkElement et participe donc au système de disposition ; ses classes dérivées peuvent être utilisées comme contenu de n’importe quel élément qui prend en charge les enfants UIElement . La classe Geometry, d’autre part, définit simplement la géométrie comme une primitive graphique et ne peut pas se restituer elle-même. Vous pouvez utiliser Geometry comme type de propriété pour les propriétés d’élément d’interface utilisateur personnalisées, où les expressions primitives graphiques de base activées par Geometry sont utiles en tant que définition.

Geometry pour UIElement.Clip

Pour fournir une valeur à la propriété UIElement.Clip dans le Windows Runtime, vous devez utiliser spécifiquement un RectangleGeometry, et non un type dérivé geometry. Si vous portez du code XAML ou d’autres frameworks XAML, vérifiez si vous pouvez modifier votre UIElement.Clip pour utiliser RectangleGeometry. Sinon, vous devrez peut-être modifier la relation d’ordre Z et utiliser des techniques telles qu’une superposition d’une ImageBrush avec une source RenderTargetBitmap modifiée qui a une transparence alpha pour les parties « clipping ».

Classes dérivées geometry

Geometry est la classe parente de plusieurs classes dérivées qui définissent différentes catégories de géométries pratiques :

Propriétés

Bounds

Obtient un rect qui spécifie le cadre englobant aligné sur l’axe de la géométrie.

Dispatcher

Retourne null toujours dans une application SDK d'application Windows. Utilisez DispatcherQueue à la place.

(Hérité de DependencyObject)
DispatcherQueue

Obtient le DispatcherQueue auquel cet objet est associé. DispatcherQueue représente une installation qui peut accéder au DependencyObject sur le thread d’interface utilisateur, même si le code est initié par un thread autre que l’interface utilisateur.

(Hérité de DependencyObject)
Empty

Obtient un objet geometry vide.

StandardFlatteningTolerance

Obtient la tolérance standard utilisée pour une approximation polygonale.

Transform

Obtient ou définit l’objet Transform appliqué à une géométrie.

TransformProperty

Identifie la propriété de dépendance Transform .

Méthodes

ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété de dépendance.

(Hérité de DependencyObject)
GetAnimationBaseValue(DependencyProperty)

Retourne toute valeur de base établie pour une propriété de dépendance, qui s’applique dans les cas où une animation n’est pas active.

(Hérité de DependencyObject)
GetValue(DependencyProperty)

Retourne la valeur effective actuelle d’une propriété de dépendance à partir d’un objet DependencyObject.

(Hérité de DependencyObject)
ReadLocalValue(DependencyProperty)

Retourne la valeur locale d’une propriété de dépendance, si une valeur locale est définie.

(Hérité de DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Inscrit une fonction de notification pour écouter les modifications apportées à un DependencyProperty spécifique sur ce instance DependencyObject.

(Hérité de DependencyObject)
SetValue(DependencyProperty, Object)

Définit la valeur locale d’une propriété de dépendance sur un DependencyObject.

(Hérité de DependencyObject)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annule une notification de modification précédemment inscrite en appelant RegisterPropertyChangedCallback.

(Hérité de DependencyObject)

S’applique à

Voir aussi