Partager 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 découper des régions et en tant que définitions de géométrie pour le rendu des données graphiques en deux dimensions sous la forme d’un chemin d’accès.

public ref class Geometry : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 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(Windows.Foundation.UniversalApiContract), 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

Configuration requise pour Windows

Famille d’appareils
Windows 10 (introduit dans 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduit dans v1.0)

Remarques

Pour les propriétés qui acceptent une géométrie, vous devez spécifier un type geometry dérivé nonabstract, 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 des 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 figure/segment 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 élément 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 un type de forme).

La propriété PathIcon.Data prend une géométrie. Dans la pratique, vous spécifiez généralement 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 des propriétés Fill, Stroke et d’autres propriétés de rendu dont Geometry et ses classes dérivées n’ont pas. 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 . En revanche, la classe Geometry définit simplement la géométrie en tant que primitive graphique et ne peut pas s’afficher 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 pour la propriété UIElement.Clip dans le Windows Runtime, vous devez utiliser spécifiquement un RectangleGeometry, et non aucun 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 de plan et utiliser des techniques telles qu’une superposition d’un ImageBrush avec une source RenderTargetBitmap modifiée qui présente une transparence alpha pour les parties « découpage ».

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

Obtient le CoreDispatcher auquel cet objet est associé. CoreDispatcher représente une fonctionnalité qui peut accéder à 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’appliquerait 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 à 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