Geometry Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
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
- 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 :
- Ellipsegeometry
- GeometryGroup : peut être utilisé pour spécifier plusieurs géométries en tant que Enfants
- LineGeometry
- PathGeometry : utilisez ce type pour toute géométrie qui ne peut pas être exprimée par les autres types de géométrie « simples »
- RectangleGeometry
Propriétés
Bounds |
Obtient un rect qui spécifie le cadre englobant aligné sur l’axe de la géométrie. |
Dispatcher |
Retourne |
DispatcherQueue |
Obtient le |
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) |