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 géométriques pour le rendu de données graphiques bidimensionnelles sous la forme d’un 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é non-abstract de Geometry, en tant qu’élément objet pour XAML ou en tant qu’instance définie 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 conceptuelles comme étant « simples » ou « complexes ». EllipseGeometry, LineGeometry et RectangleGeometry sont les géométries simples, qui spécifient la forme géométrique comme un é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 figure/segment imbriqués, ou une syntaxe de chaîne compacte qui est généralement générée 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 elle n’est pas un UIElement lui-même et doit être fournie 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 un type de forme).
La propriété PathIcon.Data prend une géométrie. Dans la pratique, vous devez généralement spécifier un 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 que Geometry et ses classes dérivées manquent. 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 en tant que primitive graphique et ne peut pas se rendre elle-même. Vous pouvez éventuellement 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 pour la propriété UIElement.Clip dans l’Windows Runtime, vous devez utiliser spécifiquement un RectangleGeometry, et non aucun type dérivé geometry. Si vous effectuez le portage de XAML ou de code à partir d’autres frameworks XAML, vérifiez si vous pouvez modifier votre UIElement.Clip pour utiliser RectangleGeometry. Sinon, vous devrez peut-être modifier la relation de classement Z et utiliser des techniques telles qu’une superposition d’un ImageBrush avec une source RenderTargetBitmap modifiée qui a une transparence alpha pour les parties « découpage ».
Classes dérivées geometry
Geometry est la classe parente pour 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 qu’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
| Nom | Description |
|---|---|
| Bounds |
Obtient un Rect qui spécifie la zone englobante alignée 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 l’approximation polygonale. |
| Transform |
Obtient ou définit l’objet Transform appliqué à une géométrie. |
| TransformProperty |
Identifie la propriété Transformer la dépendance. |
Méthodes
| Nom | Description |
|---|---|
| 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 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 à une dependencyProperty spécifique sur cette 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 qui a été précédemment inscrite en appelant RegisterPropertyChangedCallback. (Hérité de DependencyObject) |