Partager via


EllipseGeometry Classe

Définition

Représente la géométrie d’un cercle ou d’une ellipse.

public ref class EllipseGeometry sealed : System::Windows::Media::Geometry
public sealed class EllipseGeometry : System.Windows.Media.Geometry
type EllipseGeometry = class
    inherit Geometry
Public NotInheritable Class EllipseGeometry
Inherits Geometry
Héritage

Exemples

L’exemple suivant utilise deux EllipseGeometry objets pour définir le contenu d’un GeometryDrawing. Cet exemple produit la sortie suivante :

Une géométrieDrawing de deux ellipses
Deux objets EllipseGeometry

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SDKSample
{
    public class GeometryDrawingExample : Page
    {
        public GeometryDrawingExample()
        {

            //
            // Create the Geometry to draw.
            //
            GeometryGroup ellipses = new GeometryGroup();
            ellipses.Children.Add(
                new EllipseGeometry(new Point(50,50), 45, 20)
                );
            ellipses.Children.Add(
                new EllipseGeometry(new Point(50, 50), 20, 45)
                );

            //
            // Create a GeometryDrawing.
            //
            GeometryDrawing aGeometryDrawing = new GeometryDrawing();
            aGeometryDrawing.Geometry = ellipses;

            // Paint the drawing with a gradient.
            aGeometryDrawing.Brush = 
                new LinearGradientBrush(
                    Colors.Blue, 
                    Color.FromRgb(204,204,255), 
                    new Point(0,0), 
                    new Point(1,1));

            // Outline the drawing with a solid color.
            aGeometryDrawing.Pen = new Pen(Brushes.Black, 10);

            //
            // Use a DrawingImage and an Image control
            // to display the drawing.
            //
            DrawingImage geometryImage = new DrawingImage(aGeometryDrawing);

            // Freeze the DrawingImage for performance benefits.
            geometryImage.Freeze();

            Image anImage = new Image();
            anImage.Source = geometryImage;
            anImage.Stretch = Stretch.None;
            anImage.HorizontalAlignment = HorizontalAlignment.Left;

            //
            // Place the image inside a border and
            // add it to the page.
            //
            Border exampleBorder = new Border();
            exampleBorder.Child = anImage;
            exampleBorder.BorderBrush = Brushes.Gray;
            exampleBorder.BorderThickness = new Thickness(1);
            exampleBorder.HorizontalAlignment = HorizontalAlignment.Left;
            exampleBorder.VerticalAlignment = VerticalAlignment.Top;
            exampleBorder.Margin = new Thickness(10);

            this.Margin = new Thickness(20);
            this.Background = Brushes.White;
            this.Content = exampleBorder;
        }
    }
}
<Page 
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  xmlns:PresentationOptions="http://schemas.microsoft.com/winfx/2006/xaml/presentation/options" 
  xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  mc:Ignorable="PresentationOptions"
  Margin="20" Background="White">

  <Border BorderBrush="Gray" BorderThickness="1" 
    HorizontalAlignment="Left" VerticalAlignment="Top"
    Margin="10">
    <Image Stretch="None" HorizontalAlignment="Left">
      <Image.Source>
        <DrawingImage PresentationOptions:Freeze="True">
          <DrawingImage.Drawing>
          
            <GeometryDrawing>
              <GeometryDrawing.Geometry>

                <!-- Create a composite shape. -->
                <GeometryGroup>
                  <EllipseGeometry Center="50,50" RadiusX="45" RadiusY="20" />
                  <EllipseGeometry Center="50,50" RadiusX="20" RadiusY="45" />
                </GeometryGroup>
              </GeometryDrawing.Geometry>
              <GeometryDrawing.Brush>

                <!-- Paint the drawing with a gradient. -->
                <LinearGradientBrush>
                  <GradientStop Offset="0.0" Color="Blue" />
                  <GradientStop Offset="1.0" Color="#CCCCFF" />
                </LinearGradientBrush>
              </GeometryDrawing.Brush>
              <GeometryDrawing.Pen>

                <!-- Outline the drawing with a solid color. -->
                <Pen Thickness="10" Brush="Black" />
              </GeometryDrawing.Pen>
            </GeometryDrawing>
          </DrawingImage.Drawing>
        </DrawingImage>
      </Image.Source>
    </Image>
  </Border>


</Page>

Remarques

Utilisez la EllipseGeometry classe avec un Path élément ou un GeometryDrawing pour dessiner une ellipse, ou avec la Clip propriété d’un UIElement pour définir une zone de découpage elliptique. La EllipseGeometry classe a également de nombreuses autres utilisations. Pour plus d’informations sur , consultez Vue d’ensembleEllipseGeometry de Geometry.

EllipseGeometry comparé à Ellipse

La Ellipse classe a un Fill, Strokeet d’autres propriétés de rendu qui manquent EllipseGeometry . La Ellipse classe est un FrameworkElement et participe donc au système de disposition ; elle peut être utilisée comme contenu de n’importe quel élément qui prend en charge les UIElement enfants.

La EllipseGeometry classe, en revanche, définit simplement la géométrie d’une ellipse et ne peut pas s’afficher elle-même. En raison de sa simplicité, il a un plus large éventail d’utilisations.

Fonctionnalités Freezable

Un EllipseGeometry est un type d’objet Freezable et peut donc être figé pour améliorer les performances. Pour plus d’informations sur Freezable les fonctionnalités, telles que le gel et le clonage, consultez Vue d’ensemble de Freezable Objects.

Constructeurs

EllipseGeometry()

Initialise une nouvelle instance de la classe EllipseGeometry.

EllipseGeometry(Point, Double, Double)

Initialise une nouvelle instance de la classe EllipseGeometry comme une ellipse qui a un centre, un rayon x et un rayon y spécifiés.

EllipseGeometry(Point, Double, Double, Transform)

Initialise une nouvelle instance de la classe EllipseGeometry qui a la position, la taille et la transformation spécifiées.

EllipseGeometry(Rect)

Initialise une nouvelle instance de la classe EllipseGeometry qui a un diamètre horizontal égal à la largeur du Rectpassé, un diamètre vertical égal à la longueur du Rectpassé et un emplacement de point central égal au centre du Rectpassé.

Champs

CenterProperty

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

RadiusXProperty

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

RadiusYProperty

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

Propriétés

Bounds

Obtient un Rect qui représente le cadre englobant de ce EllipseGeometry. Cette méthode ne prend pas en compte la zone supplémentaire potentiellement ajoutée par un trait.

CanFreeze

Obtient une valeur qui indique si l’objet peut être rendu non modifiable.

(Hérité de Freezable)
Center

Obtient ou définit le point central de EllipseGeometry.

DependencyObjectType

Obtient le DependencyObjectType qui encapsule le type CLR de ce instance.

(Hérité de DependencyObject)
Dispatcher

Obtient le Dispatcher associé à DispatcherObject.

(Hérité de DispatcherObject)
HasAnimatedProperties

Obtient une valeur qui indique si un ou plusieurs objets AnimationClock sont associés à l'une ou l'autre des propriétés de dépendance de cet objet.

(Hérité de Animatable)
IsFrozen

Obtient une valeur qui indique si l’objet est actuellement modifiable.

(Hérité de Freezable)
IsSealed

Récupère une valeur qui indique si cette instance est actuellement sealed (en lecture seule).

(Hérité de DependencyObject)
RadiusX

Obtient ou définit la valeur de rayon x de EllipseGeometry.

RadiusY

Obtient ou définit la valeur de rayon y du EllipseGeometry.

Transform

Obtient ou définit l'objet Transform appliqué à un Geometry.

(Hérité de Geometry)

Méthodes

ApplyAnimationClock(DependencyProperty, AnimationClock)

Applique AnimationClock au DependencyProperty spécifié. Si la propriété est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé.

(Hérité de Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Applique AnimationClock au DependencyProperty spécifié. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé.

(Hérité de Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Applique une animation au DependencyProperty spécifié. L’animation est démarrée lors de la restitution de l’image suivante. Si la propriété spécifiée est déjà animée, le comportement de transfert SnapshotAndReplace est utilisé.

(Hérité de Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Applique une animation au DependencyProperty spécifié. L’animation est démarrée lors de la restitution de l’image suivante. Si la propriété spécifiée est déjà animée, le comportement HandoffBehavior spécifié est utilisé.

(Hérité de Animatable)
CheckAccess()

Détermine si le thread appelant a accès à ce DispatcherObject.

(Hérité de DispatcherObject)
ClearValue(DependencyProperty)

Efface la valeur locale d’une propriété. La propriété à effacer est spécifiée par un identificateur DependencyProperty.

(Hérité de DependencyObject)
ClearValue(DependencyPropertyKey)

Efface la valeur locale d’une propriété en lecture seule. La propriété à effacer est spécifiée par DependencyPropertyKey.

(Hérité de DependencyObject)
Clone()

Crée un clone modifiable de ce EllipseGeometry, en créant des copies complètes des valeurs de cet objet. Pendant la copie des propriétés de dépendance, cette méthode copie les références de ressources et les liaisons de données (qui risquent toutefois de ne plus pouvoir se résoudre), mais pas les animations ni leurs valeurs actuelles.

CloneCore(Freezable)

Fait de l’instance un clone (copie complète) du Freezable spécifié utilisant des valeurs de propriété (non animée) de base.

(Hérité de Freezable)
CloneCurrentValue()

Crée un clone modifiable de cet objet EllipseGeometry, en effectuant une copie complète des valeurs actuelles de cet objet. Contrairement à leurs valeurs actuelles, les références de ressources, les liaisons de données et les animations ne sont pas copiées.

CloneCurrentValueCore(Freezable)

Fait de l’instance un clone (copie complète) modifiable du Freezable spécifié à l’aide des valeurs de propriété actuelles.

(Hérité de Freezable)
CoerceValue(DependencyProperty)

Convertit la valeur de la propriété de dépendance spécifiée. Pour cela, on appelle toute fonction CoerceValueCallback spécifiée dans les métadonnées de propriété pour la propriété de dépendance telle qu’elle existe sur le DependencyObject appelant.

(Hérité de DependencyObject)
CreateInstance()

Initialise une nouvelle instance de la classe Freezable.

(Hérité de Freezable)
CreateInstanceCore()

Une fois implémentée dans une classe dérivée, initialise une nouvelle instance de la classe dérivée Freezable.

(Hérité de Freezable)
Equals(Object)

Détermine si un DependencyObject fourni est équivalent au DependencyObject réel.

(Hérité de DependencyObject)
FillContains(Geometry)

Indique si la géométrie actuelle contient complètement la Geometry spécifiée.

(Hérité de Geometry)
FillContains(Geometry, Double, ToleranceType)

Indique si la géométrie actuelle contient la Geometry spécifiée, selon la marge d'erreur spécifiée.

(Hérité de Geometry)
FillContains(Point)

Indique si la géométrie contient le Point spécifié.

(Hérité de Geometry)
FillContains(Point, Double, ToleranceType)

Indique si la géométrie contient le Point spécifié, selon la marge d'erreur spécifiée.

(Hérité de Geometry)
FillContainsWithDetail(Geometry)

Retourne une valeur qui décrit l'intersection entre la géométrie actuelle et la géométrie spécifiée.

(Hérité de Geometry)
FillContainsWithDetail(Geometry, Double, ToleranceType)

Retourne une valeur qui décrit l'intersection entre la géométrie actuelle et la géométrie spécifiée, selon la marge d'erreur spécifiée.

(Hérité de Geometry)
Freeze()

Rend l’objet actif non modifiable et attribue à sa propriété IsFrozen la valeur true.

(Hérité de Freezable)
FreezeCore(Boolean)

Rend cet objet Animatable non modifiable ou détermine s'il peut être rendu non modifiable.

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

Retourne la valeur non animée de la propriété DependencyProperty spécifiée.

(Hérité de Animatable)
GetArea()

Définit la zone de la région remplie de l'objet Geometry.

(Hérité de Geometry)
GetArea(Double, ToleranceType)

Obtient la zone de EllipseGeometry.

GetAsFrozen()

Crée une copie figée de Freezable, à l'aide des valeurs de propriété (non-animées) de base. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.

(Hérité de Freezable)
GetAsFrozenCore(Freezable)

Transforme l’instance en clone figé du Freezable spécifié utilisant des valeurs de propriété (non animée) de base.

(Hérité de Freezable)
GetCurrentValueAsFrozen()

Crée une copie figée de Freezable à l'aide des valeurs de propriété actuelles. Étant donné que la copie est figée, tous les sous-objets figés sont copiés par référence.

(Hérité de Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Convertit l’instance actuelle en un clone figé du Freezable spécifié. Si l’objet a des propriétés de dépendance animées, leurs valeurs animées actuelles sont copiées.

(Hérité de Freezable)
GetFlattenedPathGeometry()

Obtient PathGeometry qui est une approximation polygonale de l'objet Geometry.

(Hérité de Geometry)
GetFlattenedPathGeometry(Double, ToleranceType)

Obtient PathGeometry, dans la tolérance spécifiée qui est une approximation polygonale de l'objet Geometry.

(Hérité de Geometry)
GetHashCode()

Obtient un code de hachage pour ce DependencyObject.

(Hérité de DependencyObject)
GetLocalValueEnumerator()

Crée un énumérateur spécialisé pour déterminer quelles propriétés de dépendance ont des valeurs définies localement sur ce DependencyObject.

(Hérité de DependencyObject)
GetOutlinedPathGeometry()

Obtient PathGeometry qui est un contour simplifié de la zone remplie de Geometry.

(Hérité de Geometry)
GetOutlinedPathGeometry(Double, ToleranceType)

Obtient PathGeometry, dans la tolérance spécifiée qui est un plan simplifié de la région remplie de Geometry.

(Hérité de Geometry)
GetRenderBounds(Pen)

Retourne un rectangle aligné sur un axe qui est exactement assez grand pour contenir la géométrie après qu'elle ait été esquissée avec le Pen spécifié.

(Hérité de Geometry)
GetRenderBounds(Pen, Double, ToleranceType)

Retourne un rectangle aligné sur un axe qui est exactement assez grand pour contenir la géométrie après qu'elle ait été esquissée avec le Pen spécifié, selon le facteur de tolérance spécifié.

(Hérité de Geometry)
GetType()

Obtient le Type de l'instance actuelle.

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

Retourne la valeur effective actuelle d’une propriété de dépendance sur cette instance d’un DependencyObject.

(Hérité de DependencyObject)
GetWidenedPathGeometry(Pen)

Obtient PathGeometry qui est la forme définie par le trait sur le Geometry généré par le Pen spécifié.

(Hérité de Geometry)
GetWidenedPathGeometry(Pen, Double, ToleranceType)

Obtient PathGeometry qui est la forme défini par le trait sur le Geometry produit par le Pen spécifié, selon le facteur de tolérance spécifié.

(Hérité de Geometry)
InvalidateProperty(DependencyProperty)

Réévalue la valeur effective de la propriété de dépendance spécifiée.

(Hérité de DependencyObject)
IsEmpty()

Détermine si cet objet EllipseGeometry est vide.

MayHaveCurves()

Détermine si cet objet EllipseGeometry peut avoir des segments courbés.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnChanged()

Appelé lorsque l’objet Freezable actuel est modifié.

(Hérité de Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Garantit que les pointeurs de contexte appropriés sont établis pour un membre de données de type DependencyObjectType qui vient juste d'être défini.

(Hérité de Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Ce membre prend en charge l’infrastructure Windows Presentation Foundation (WPF) et n’est pas destiné à être utilisé directement à partir de votre code.

(Hérité de Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Substitue l’implémentation DependencyObject de OnPropertyChanged(DependencyPropertyChangedEventArgs) pour appeler également tous les gestionnaires Changed en réponse à une propriété de dépendance variable de type Freezable.

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

Retourne la valeur locale d’une propriété de dépendance, si elle existe.

(Hérité de DependencyObject)
ReadPreamble()

Garantit que Freezable est accessible à partir d'un thread valide. Les héritiers de Freezable doivent appeler cette méthode au début de toute API lisant les membres de données qui ne sont pas des propriétés de dépendance.

(Hérité de Freezable)
SetCurrentValue(DependencyProperty, Object)

Définit la valeur d’une propriété de dépendance sans modifier sa valeur source.

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

Définit la valeur locale d’une propriété de dépendance, spécifiée par son identificateur de propriété de dépendance.

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

Définit la valeur locale d’une propriété de dépendance en lecture seule, spécifiée par l’identificateur DependencyPropertyKey de la propriété de dépendance.

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

Retourne une valeur qui indique si les processus de sérialisation doivent sérialiser la valeur de la propriété de dépendance fournie.

(Hérité de DependencyObject)
ShouldSerializeTransform()

Obtient une valeur qui indique si la valeur de la propriété Transform doit être sérialisée.

(Hérité de Geometry)
StrokeContains(Pen, Point)

Détermine si le Point spécifié est contenu dans le trait produit en appliquant le Pen spécifié à la géométrie.

(Hérité de Geometry)
StrokeContains(Pen, Point, Double, ToleranceType)

Détermine si le Point spécifié est contenu dans le trait produit en appliquant le Pen spécifié à la géométrie, selon la marge d'erreur spécifiée.

(Hérité de Geometry)
StrokeContainsWithDetail(Pen, Geometry)

Retourne une valeur qui décrit l'intersection entre la Geometry spécifiée et le trait créé en appliquant le Pen spécifié à la géométrie actuelle.

(Hérité de Geometry)
StrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType)

Obtient une valeur qui décrit l'intersection entre la Geometry spécifiée et le trait créé en appliquant le Pen spécifié à la géométrie actuelle, selon la marge d'erreur spécifiée.

(Hérité de Geometry)
ToString()

Crée une représentation sous forme de chaîne de l'objet basée sur la culture en cours.

(Hérité de Geometry)
ToString(IFormatProvider)

Crée une représentation sous forme de chaîne de l'objet à l'aide des informations de mise en forme spécifiques à la culture spécifiées.

(Hérité de Geometry)
VerifyAccess()

Garantit que le thread appelant a accès à DispatcherObject.

(Hérité de DispatcherObject)
WritePostscript()

Déclenche l’événement Changed pour le Freezable et appelle sa méthode OnChanged(). Les classes qui dérivent de Freezable doivent appeler cette méthode à la fin de toute API qui modifie des membres de classe qui ne sont pas stockés en tant que propriétés de dépendance.

(Hérité de Freezable)
WritePreamble()

Vérifie que le Freezable n'est pas figé et que son accès s'effectue à partir d'un contexte de thread valide. Les héritiers de Freezable doivent appeler cette méthode au début de toute API écrivant dans les membres de données qui ne sont pas des propriétés de dépendance.

(Hérité de Freezable)

Événements

Changed

Se produit lorsque Freezable ou un objet qu'il contient est modifié.

(Hérité de Freezable)

Implémentations d’interfaces explicites

IFormattable.ToString(String, IFormatProvider)

Met en forme la valeur de l’instance actuelle en utilisant le format spécifié.

(Hérité de Geometry)

S’applique à

Voir aussi