EllipseGeometry Třída

Definice

Představuje geometrii kruhu nebo elipsy.

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
Dědičnost

Příklady

Následující příklad používá dva EllipseGeometry objekty k definování obsahu objektu GeometryDrawing. Tento příklad vytvoří následující výstup:

A GeometryDrawing se dvěma třemi tečkami
Dva objekty 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>

Poznámky

EllipseGeometry Pomocí třídy s prvkem Path nebo objektem nakreslete GeometryDrawing tři tečky nebo s Clip vlastností objektu UIElement definujete oblast elipsy. Třída EllipseGeometry má také mnoho dalších použití. Další informace o EllipseGeometrynajdete v tématu Přehled geometrie.

ElipseGeometry v porovnání s elipsou

Třída EllipseFill, Strokea další vlastnosti vykreslování, které EllipseGeometry chybí. Třída Ellipse je a FrameworkElement proto se účastní systému rozložení; lze ji použít jako obsah libovolného prvku, který podporuje UIElement podřízené položky.

Třída EllipseGeometry na druhé straně jednoduše definuje geometrii elipsy a nemůže se vykreslit. Vzhledem ke své jednoduchosti má širší škálu použití.

Zamrznutelné funkce

Je EllipseGeometry typ objektu Freezable , a proto může být za účelem zvýšení výkonu zmrazen. Informace o Freezable funkcích, jako je zmrazení a klonování, najdete v tématu Přehled zmrazených objektů.

Konstruktory

EllipseGeometry()

Inicializuje novou instanci EllipseGeometry třídy .

EllipseGeometry(Point, Double, Double)

Inicializuje novou instanci EllipseGeometry třídy jako elipsu, která má zadané umístění středu, poloměr x a poloměr y.

EllipseGeometry(Point, Double, Double, Transform)

Inicializuje novou instanci EllipseGeometry třídy, která má zadanou pozici, velikost a transformaci.

EllipseGeometry(Rect)

Inicializuje novou instanci EllipseGeometry třídy, která má vodorovný průměr rovný šířce předaného Rectobjektu , svislý průměr rovný délce předaného Recta umístění středového bodu rovnající se středu předaného Rectobjektu .

Pole

CenterProperty

Identifikuje Center vlastnost závislosti.

RadiusXProperty

Identifikuje RadiusX vlastnost závislosti.

RadiusYProperty

Identifikuje RadiusY vlastnost závislosti.

Vlastnosti

Bounds

Získá objekt Rect , který představuje ohraničující rámeček tohoto EllipseGeometryobjektu . Tato metoda nebere v úvahu další oblast, kterou může přidat tah.

CanFreeze

Získá hodnotu, která označuje, zda objekt lze změnit.

(Zděděno od Freezable)
Center

Získá nebo nastaví středový bod objektu EllipseGeometry.

DependencyObjectType

Získá, DependencyObjectType který zabalí typ CLR této instance.

(Zděděno od DependencyObject)
Dispatcher

Získá to DispatcherDispatcherObject je přidružena k.

(Zděděno od DispatcherObject)
HasAnimatedProperties

Získá hodnotu, která označuje, zda jeden nebo více AnimationClock objektů je přidružena k některému z vlastností závislostí tohoto objektu.

(Zděděno od Animatable)
IsFrozen

Získá hodnotu, která označuje, zda je objekt aktuálně upravitelný.

(Zděděno od Freezable)
IsSealed

Získá hodnotu, která označuje, zda je tato instance právě zapečetěna (jen pro čtení).

(Zděděno od DependencyObject)
RadiusX

Získá nebo nastaví hodnotu poloměru x objektu EllipseGeometry.

RadiusY

Získá nebo nastaví hodnotu poloměru y objektu EllipseGeometry.

Transform

Získá nebo nastaví Transform objekt použitý na Geometryobjekt .

(Zděděno od Geometry)

Metody

ApplyAnimationClock(DependencyProperty, AnimationClock)

Použije na AnimationClock zadanou DependencyPropertyhodnotu . Pokud je vlastnost už animovaná, SnapshotAndReplace použije se chování předání.

(Zděděno od Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Použije na AnimationClock zadanou DependencyPropertyhodnotu . Pokud je vlastnost už animovaná, použije se zadaná HandoffBehavior vlastnost.

(Zděděno od Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Použije animaci na zadaný objekt DependencyProperty. Animace se spustí při vykreslení dalšího snímku. Pokud je zadaná vlastnost již animované, SnapshotAndReplace použije se chování předání.

(Zděděno od Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Použije animaci na zadaný objekt DependencyProperty. Animace se spustí při vykreslení dalšího snímku. Pokud je zadaná vlastnost již animovaná, použije se zadaná HandoffBehavior vlastnost.

(Zděděno od Animatable)
CheckAccess()

Určuje, zda volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)
ClearValue(DependencyProperty)

Vymaže místní hodnotu vlastnosti. Vlastnost, která má být vymazána, je určena identifikátorem DependencyProperty .

(Zděděno od DependencyObject)
ClearValue(DependencyPropertyKey)

Vymaže místní hodnotu vlastnosti jen pro čtení. Vlastnost, která se má vymazat, je určena parametrem DependencyPropertyKey.

(Zděděno od DependencyObject)
Clone()

Vytvoří upravitelný klon tohoto EllipseGeometryobjektu a vytvoří hluboké kopie hodnot tohoto objektu. Při kopírování vlastností závislostí tato metoda kopíruje odkazy na prostředky a datové vazby (ale nemusí se už překládat), ale ne animace nebo jejich aktuální hodnoty.

CloneCore(Freezable)

Vytvoří instanci klon (hloubkovou kopii) zadaného Freezable pomocí základních (ne animovaných) hodnot vlastností.

(Zděděno od Freezable)
CloneCurrentValue()

Vytvoří upravitelný klon tohoto EllipseGeometry objektu a vytvoří hluboké kopie aktuálních hodnot tohoto objektu. Odkazy na prostředky, datové vazby a animace se nekopírují, ale jejich aktuální hodnoty ano.

CloneCurrentValueCore(Freezable)

Vytvoří instanci upravitelný klon (hloubkovou kopii) zadaného Freezable pomocí aktuálních hodnot vlastností.

(Zděděno od Freezable)
CoerceValue(DependencyProperty)

Převede hodnotu zadané vlastnosti závislosti. Toho se dosáhne vyvoláním jakékoli CoerceValueCallback funkce zadané v metadatech vlastnosti závislosti, protože existuje ve volajícím DependencyObjectobjektu .

(Zděděno od DependencyObject)
CreateInstance()

Inicializuje novou instanci Freezable třídy .

(Zděděno od Freezable)
CreateInstanceCore()

Při implementaci v odvozené třídě vytvoří novou instanci odvozené Freezable třídy.

(Zděděno od Freezable)
Equals(Object)

Určuje, zda zadaný DependencyObject je ekvivalentní k aktuálnímu DependencyObject.

(Zděděno od DependencyObject)
FillContains(Geometry)

Určuje, zda aktuální geometrie zcela obsahuje zadanou Geometryhodnotu .

(Zděděno od Geometry)
FillContains(Geometry, Double, ToleranceType)

Určuje, zda aktuální geometrie obsahuje zadanou Geometryhodnotu s ohledem na zadaný okraj chyby.

(Zděděno od Geometry)
FillContains(Point)

Určuje, zda geometrie obsahuje zadanou Pointhodnotu .

(Zděděno od Geometry)
FillContains(Point, Double, ToleranceType)

Určuje, zda geometrie obsahuje zadanou Pointhodnotu , vzhledem k zadanému okraji chyby.

(Zděděno od Geometry)
FillContainsWithDetail(Geometry)

Vrátí hodnotu, která popisuje průnik mezi aktuální geometrií a zadanou geometrií.

(Zděděno od Geometry)
FillContainsWithDetail(Geometry, Double, ToleranceType)

Vrátí hodnotu, která popisuje průsečík mezi aktuální geometrií a zadanou geometrií vzhledem k zadanému okraji chyby.

(Zděděno od Geometry)
Freeze()

Nastaví aktuální objekt jako neupravitelný a nastaví jeho IsFrozen vlastnost na true.

(Zděděno od Freezable)
FreezeCore(Boolean)

Nastaví tento Animatable objekt jako neupravitelný nebo určuje, zda jej lze změnit jako neupravitelný.

(Zděděno od Animatable)
GetAnimationBaseValue(DependencyProperty)

Vrátí ne animovanou hodnotu zadané DependencyPropertyhodnoty .

(Zděděno od Animatable)
GetArea()

Získá oblast vyplněné oblasti objektu Geometry .

(Zděděno od Geometry)
GetArea(Double, ToleranceType)

Získá oblast tohoto EllipseGeometryobjektu .

GetAsFrozen()

Vytvoří zamrzlou kopii objektu Freezables použitím základních (ne animovaných) hodnot vlastností. Vzhledem k tomu, že kopie je zamrzlá, jsou všechny ukotvené dílčí objekty zkopírovány odkazem.

(Zděděno od Freezable)
GetAsFrozenCore(Freezable)

Vytvoří instanci zamrznutý klon zadaného Freezable pomocí základních (ne animovaných) hodnot vlastností.

(Zděděno od Freezable)
GetCurrentValueAsFrozen()

Vytvoří zamrzlou kopii objektu Freezable s použitím aktuálních hodnot vlastností. Vzhledem k tomu, že kopie je zamrzlá, jsou všechny ukotvené dílčí objekty zkopírovány odkazem.

(Zděděno od Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Vytvoří aktuální instanci zablokovaného klonu zadaného Freezableobjektu . Pokud má objekt animované vlastnosti závislostí, zkopírují se jeho aktuální animované hodnoty.

(Zděděno od Freezable)
GetFlattenedPathGeometry()

Získá, PathGeometry který je mnohoúhelníkové aproximace objektu Geometry .

(Zděděno od Geometry)
GetFlattenedPathGeometry(Double, ToleranceType)

PathGeometryZíská , v rámci zadané tolerance, který je mnohoúhelníkové aproximace objektuGeometry.

(Zděděno od Geometry)
GetHashCode()

Získá hash kód pro tento DependencyObject.

(Zděděno od DependencyObject)
GetLocalValueEnumerator()

Vytvoří specializovaný enumerátor pro určení vlastností závislostí, které mají místně nastavené hodnoty v tomto DependencyObjectobjektu .

(Zděděno od DependencyObject)
GetOutlinedPathGeometry()

PathGeometry Získá zjednodušenou osnovu vyplněné oblasti objektu Geometry.

(Zděděno od Geometry)
GetOutlinedPathGeometry(Double, ToleranceType)

PathGeometryZíská , v rámci zadané tolerance, která je zjednodušenou osnovou vyplněné oblasti objektu Geometry.

(Zděděno od Geometry)
GetRenderBounds(Pen)

Vrátí obdélník zarovnaný s osou, který je přesně dostatečně velký na to, aby obsahoval geometrii po jeho obrysu se zadaným Penobjektem .

(Zděděno od Geometry)
GetRenderBounds(Pen, Double, ToleranceType)

Vrátí obdélník zarovnaný s osou, který je přesně dostatečně velký na to, aby obsahoval geometrii po jeho obrysu se zadaným Penznakem , vzhledem k zadanému tolerančnímu faktoru.

(Zděděno od Geometry)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
GetValue(DependencyProperty)

Vrátí aktuální efektivní hodnotu vlastnosti závislosti na této instanci objektu DependencyObject.

(Zděděno od DependencyObject)
GetWidenedPathGeometry(Pen)

PathGeometry Získá tvar definovaný tahem v objektu Geometry vytvořeném zadaným Penobjektem .

(Zděděno od Geometry)
GetWidenedPathGeometry(Pen, Double, ToleranceType)

PathGeometry Získá tvar definovaný tahem na Geometry vytvořeném zadaným Pen, vzhledem k zadanému tolerančnímu faktoru.

(Zděděno od Geometry)
InvalidateProperty(DependencyProperty)

Znovu vyhodnotí efektivní hodnotu pro zadanou vlastnost závislosti.

(Zděděno od DependencyObject)
IsEmpty()

Určuje, zda je tento EllipseGeometry objekt prázdný.

MayHaveCurves()

Určuje, zda tento EllipseGeometry objekt může mít zakřivené segmenty.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
OnChanged()

Volána při změně aktuálního Freezable objektu.

(Zděděno od Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Zajišťuje, že jsou vytvořeny vhodné ukazatele kontextu pro DependencyObjectType datový člen, který byl právě nastaven.

(Zděděno od Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Tento člen podporuje infrastrukturu Windows Presentation Foundation (WPF) a není určen k použití přímo z vašeho kódu.

(Zděděno od Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Přepíše implementaci DependencyObject tak, OnPropertyChanged(DependencyPropertyChangedEventArgs) aby také vyvolala všechny Changed obslužné rutiny v reakci na měnící se vlastnost závislosti typu Freezable.

(Zděděno od Freezable)
ReadLocalValue(DependencyProperty)

Vrátí místní hodnotu vlastnosti závislosti, pokud existuje.

(Zděděno od DependencyObject)
ReadPreamble()

Zajišťuje, že Freezable se k souboru přistupuje z platného vlákna. Dědíci Freezable musí tuto metodu volat na začátku jakéhokoli rozhraní API, které čte datové členy, které nejsou vlastnosti závislostí.

(Zděděno od Freezable)
SetCurrentValue(DependencyProperty, Object)

Nastaví hodnotu vlastnosti závislosti beze změny jejího zdroje hodnoty.

(Zděděno od DependencyObject)
SetValue(DependencyProperty, Object)

Nastaví místní hodnotu vlastnosti závislosti určenou identifikátorem vlastnosti závislosti.

(Zděděno od DependencyObject)
SetValue(DependencyPropertyKey, Object)

Nastaví místní hodnotu vlastnosti závislosti jen pro čtení určenou DependencyPropertyKey identifikátorem vlastnosti závislosti.

(Zděděno od DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Vrátí hodnotu, která označuje, zda serializační procesy mají serializovat hodnotu pro zadanou vlastnost závislosti.

(Zděděno od DependencyObject)
ShouldSerializeTransform()

Získá hodnotu, která označuje, zda hodnota Transform vlastnosti by měla být serializována.

(Zděděno od Geometry)
StrokeContains(Pen, Point)

Určuje, zda je zadaná Point hodnota obsažena v tahu vytvořeném použitím zadaného Pen na geometrii.

(Zděděno od Geometry)
StrokeContains(Pen, Point, Double, ToleranceType)

Určuje, zda je zadaná Point hodnota obsažena v tahu vytvořeném použitím zadaného Pen na geometrii s ohledem na zadaný okraj chyby.

(Zděděno od Geometry)
StrokeContainsWithDetail(Pen, Geometry)

Vrátí hodnotu, která popisuje průsečík mezi zadaným Geometry a tahem vytvořeným použitím zadaného Pen objektu na aktuální geometrii.

(Zděděno od Geometry)
StrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType)

Získá hodnotu, která popisuje průsečík mezi zadaným Geometry a tah vytvořený použitím zadané Pen na aktuální geometrii zadanou hranici chyby.

(Zděděno od Geometry)
ToString()

Vytvoří řetězcovou reprezentaci objektu na základě aktuální jazykové verze.

(Zděděno od Geometry)
ToString(IFormatProvider)

Vytvoří řetězcovou reprezentaci objektu pomocí informací o formátování specifické pro zadanou jazykovou verzi.

(Zděděno od Geometry)
VerifyAccess()

Vynucuje, že volající vlákno má přístup k tomuto DispatcherObject.

(Zděděno od DispatcherObject)
WritePostscript()

Changed Vyvolá událost pro Freezable a vyvolá jeho OnChanged() metodu. Třídy odvozené z Freezable by měly tuto metodu volat na konci jakéhokoli rozhraní API, které upravuje členy třídy, které nejsou uloženy jako vlastnosti závislosti.

(Zděděno od Freezable)
WritePreamble()

Ověřuje, že Freezable objekt není zamrznutý a že se k němu přistupuje z platného kontextu podprocesů. Freezable Dědiče by tuto metodu měli volat na začátku jakéhokoli rozhraní API, které zapisuje do datových členů, které nejsou vlastnosti závislostí.

(Zděděno od Freezable)

Událost

Changed

Vyvolá se při změně objektu Freezable nebo objektu, který obsahuje.

(Zděděno od Freezable)

Explicitní implementace rozhraní

IFormattable.ToString(String, IFormatProvider)

Formátuje hodnotu aktuální instance pomocí zadaného formátu.

(Zděděno od Geometry)

Platí pro

Viz také