EllipseGeometry Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje geometrię okręgu lub wielokropka.
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
- Dziedziczenie
Przykłady
W poniższym przykładzie użyto dwóch EllipseGeometry obiektów do zdefiniowania zawartości obiektu GeometryDrawing. Ten przykład generuje następujące wyniki:
Dwa obiekty 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>
Uwagi
EllipseGeometry Użyj klasy z elementem Path lub elementem GeometryDrawing , aby narysować wielokropek lub z Clip właściwością elementu UIElement , aby zdefiniować wielokropek regionu klipu. Klasa EllipseGeometry ma również wiele innych zastosowań. Aby uzyskać więcej informacji na temat EllipseGeometryprogramu , zobacz Geometry Overview (Omówienie geometrii).
ElipseGeometry w porównaniu do elipsy
Klasa Ellipse ma Fillwłaściwości , Strokei inne właściwości renderowania, których EllipseGeometry brakuje. Klasa Ellipse jest elementem FrameworkElement i w związku z tym uczestniczy w systemie układu; może być używana jako zawartość dowolnego elementu, który obsługuje UIElement elementy podrzędne.
Z EllipseGeometry drugiej strony klasa po prostu definiuje geometrię wielokropka i nie może się renderować. Ze względu na prostotę ma szerszy zakres zastosowań.
Funkcje z możliwością zamrażania
Element EllipseGeometry jest typem Freezable obiektu i dlatego można go zablokować, aby zwiększyć wydajność. Aby uzyskać informacje o Freezable funkcjach, takich jak zamrażanie i klonowanie, zobacz Omówienie obiektów zamrażalnych.
Konstruktory
EllipseGeometry() |
Inicjuje nowe wystąpienie klasy EllipseGeometry. |
EllipseGeometry(Point, Double, Double) |
Inicjuje nowe wystąpienie EllipseGeometry klasy jako wielokropek, który ma określoną lokalizację środkową, promień x i promień y. |
EllipseGeometry(Point, Double, Double, Transform) |
Inicjuje EllipseGeometry nowe wystąpienie klasy, która ma określoną pozycję, rozmiar i transformację. |
EllipseGeometry(Rect) |
Inicjuje nowe wystąpienie EllipseGeometry klasy o średnicy poziomej równej szerokości przekazanej Rect, średnicy pionowej równej długości przekazywanej Recti lokalizacji punktu środkowego równej środku przekazanego Rectobiektu . |
Pola
CenterProperty |
Identyfikuje Center właściwość zależności. |
RadiusXProperty |
Identyfikuje RadiusX właściwość zależności. |
RadiusYProperty |
Identyfikuje RadiusY właściwość zależności. |
Właściwości
Bounds |
Pobiera element Rect reprezentujący pole ograniczenia tego EllipseGeometryobiektu . Ta metoda nie uwzględnia dodatkowego obszaru potencjalnie dodanego przez pociągnięcie. |
CanFreeze |
Pobiera wartość wskazującą, czy obiekt może być niemodyfikowalny. (Odziedziczone po Freezable) |
Center |
Pobiera lub ustawia punkt środkowy obiektu EllipseGeometry. |
DependencyObjectType |
DependencyObjectType Pobiera opakowujący typ clR tego wystąpienia. (Odziedziczone po DependencyObject) |
Dispatcher |
Pobiera element, z Dispatcher który DispatcherObject jest skojarzony. (Odziedziczone po DispatcherObject) |
HasAnimatedProperties |
Pobiera wartość wskazującą, czy co najmniej jeden AnimationClock obiekt jest skojarzony z dowolnymi właściwościami zależności tego obiektu. (Odziedziczone po Animatable) |
IsFrozen |
Pobiera wartość wskazującą, czy obiekt jest obecnie modyfikowalny. (Odziedziczone po Freezable) |
IsSealed |
Pobiera wartość wskazującą, czy to wystąpienie jest obecnie zapieczętowane (tylko do odczytu). (Odziedziczone po DependencyObject) |
RadiusX |
Pobiera lub ustawia wartość x-radius elementu EllipseGeometry. |
RadiusY |
Pobiera lub ustawia wartość promień y wartości .EllipseGeometry |
Transform |
Pobiera lub ustawia Transform obiekt zastosowany do obiektu Geometry. (Odziedziczone po Geometry) |
Metody
ApplyAnimationClock(DependencyProperty, AnimationClock) |
Stosuje element AnimationClock do określonego DependencyPropertyelementu . Jeśli właściwość jest już animowana, SnapshotAndReplace używane jest zachowanie przekazywania. (Odziedziczone po Animatable) |
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) |
Stosuje element AnimationClock do określonego DependencyPropertyelementu . Jeśli właściwość jest już animowana, zostanie użyta określona HandoffBehavior wartość . (Odziedziczone po Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline) |
Stosuje animację do określonego DependencyPropertyelementu . Animacja jest uruchamiana po renderowaniu następnej ramki. Jeśli określona właściwość jest już animowana, SnapshotAndReplace zostanie użyte zachowanie przekazywania. (Odziedziczone po Animatable) |
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) |
Stosuje animację do określonego DependencyPropertyelementu . Animacja jest uruchamiana po renderowaniu następnej ramki. Jeśli określona właściwość jest już animowana, zostanie użyta określona HandoffBehavior właściwość. (Odziedziczone po Animatable) |
CheckAccess() |
Określa, czy wątek wywołujący ma dostęp do tego DispatcherObjectelementu . (Odziedziczone po DispatcherObject) |
ClearValue(DependencyProperty) |
Czyści wartość lokalną właściwości. Właściwość do wyczyszczenia jest określana przez DependencyProperty identyfikator. (Odziedziczone po DependencyObject) |
ClearValue(DependencyPropertyKey) |
Czyści wartość lokalną właściwości tylko do odczytu. Właściwość do wyczyszczenia jest określana przez DependencyPropertyKeyelement . (Odziedziczone po DependencyObject) |
Clone() |
Tworzy modyfikowalny klon tego EllipseGeometryobiektu , tworząc głębokie kopie wartości tego obiektu. Podczas kopiowania właściwości zależności ta metoda kopiuje odwołania do zasobów i powiązania danych (ale mogą nie być już rozpoznawane), ale nie animacje ani ich bieżące wartości. |
CloneCore(Freezable) |
Sprawia, że wystąpienie jest klonem (kopią głęboką) określonej Freezable wartości właściwości przy użyciu wartości właściwości base (nie animowanych). (Odziedziczone po Freezable) |
CloneCurrentValue() |
Tworzy modyfikowalny klon tego EllipseGeometry obiektu, tworząc głębokie kopie bieżących wartości tego obiektu. Odwołania do zasobów, powiązania danych i animacje nie są kopiowane, ale ich bieżące wartości są. |
CloneCurrentValueCore(Freezable) |
Sprawia, że wystąpienie jest modyfikowalny klon (kopia głęboka) określonego Freezable przy użyciu bieżących wartości właściwości. (Odziedziczone po Freezable) |
CoerceValue(DependencyProperty) |
Coerce wartość określonej właściwości zależności. Jest to realizowane przez wywołanie dowolnej CoerceValueCallback funkcji określonej w metadanych właściwości dla właściwości zależności, ponieważ istnieje w wywołaniu DependencyObject. (Odziedziczone po DependencyObject) |
CreateInstance() |
Inicjuje nowe wystąpienie klasy Freezable. (Odziedziczone po Freezable) |
CreateInstanceCore() |
Po zaimplementowaniu w klasie pochodnej tworzy nowe wystąpienie klasy pochodnej Freezable . (Odziedziczone po Freezable) |
Equals(Object) |
Określa, czy podany DependencyObject element jest odpowiednikiem bieżącego DependencyObjectelementu . (Odziedziczone po DependencyObject) |
FillContains(Geometry) |
Wskazuje, czy bieżąca geometria całkowicie zawiera określony Geometryelement . (Odziedziczone po Geometry) |
FillContains(Geometry, Double, ToleranceType) |
Wskazuje, czy bieżąca geometria zawiera określony Geometrymargines błędu. (Odziedziczone po Geometry) |
FillContains(Point) |
Wskazuje, czy geometria zawiera określony Pointelement . (Odziedziczone po Geometry) |
FillContains(Point, Double, ToleranceType) |
Wskazuje, czy geometria zawiera określony Pointmargines błędu. (Odziedziczone po Geometry) |
FillContainsWithDetail(Geometry) |
Zwraca wartość opisową przecięcia między bieżącą geometrią a określoną geometrią. (Odziedziczone po Geometry) |
FillContainsWithDetail(Geometry, Double, ToleranceType) |
Zwraca wartość, która opisuje przecięcie między bieżącą geometrią a określoną geometrią, biorąc pod uwagę określony margines błędu. (Odziedziczone po Geometry) |
Freeze() |
Sprawia, że bieżący obiekt jest niezmodyfikowalny i ustawia jego IsFrozen właściwość na |
FreezeCore(Boolean) |
Sprawia, że ten Animatable obiekt jest niezmodyfikowalny lub określa, czy można go niemodyfikować. (Odziedziczone po Animatable) |
GetAnimationBaseValue(DependencyProperty) |
Zwraca wartość nie animowaną określonego DependencyPropertyelementu . (Odziedziczone po Animatable) |
GetArea() |
Pobiera obszar wypełnionego Geometry regionu obiektu. (Odziedziczone po Geometry) |
GetArea(Double, ToleranceType) |
Pobiera obszar tego EllipseGeometryobiektu . |
GetAsFrozen() |
Tworzy zamrożoną kopię obiektu Freezableprzy użyciu wartości właściwości base (nie animowanych). Ponieważ kopia jest zamrożona, wszystkie zamrożone obiekty podrzędne są kopiowane przez odwołanie. (Odziedziczone po Freezable) |
GetAsFrozenCore(Freezable) |
Sprawia, że wystąpienie jest zamrożonym klonem określonej Freezable wartości właściwości przy użyciu wartości właściwości base (nie animowanych). (Odziedziczone po Freezable) |
GetCurrentValueAsFrozen() |
Tworzy zamrożoną kopię przy użyciu bieżących Freezable wartości właściwości. Ponieważ kopia jest zamrożona, wszystkie zamrożone obiekty podrzędne są kopiowane przez odwołanie. (Odziedziczone po Freezable) |
GetCurrentValueAsFrozenCore(Freezable) |
Sprawia, że bieżące wystąpienie jest klonem zamrożonym określonego Freezableobiektu . Jeśli obiekt ma animowane właściwości zależności, są kopiowane ich bieżące animowane wartości. (Odziedziczone po Freezable) |
GetFlattenedPathGeometry() |
Pobiera wartość PathGeometry , która jest wielokątnym przybliżeniem Geometry obiektu. (Odziedziczone po Geometry) |
GetFlattenedPathGeometry(Double, ToleranceType) |
Pobiera obiekt PathGeometry, w określonej tolerancji, czyli wielokątne przybliżenie Geometry obiektu. (Odziedziczone po Geometry) |
GetHashCode() |
Pobiera kod skrótu dla tego pliku DependencyObject. (Odziedziczone po DependencyObject) |
GetLocalValueEnumerator() |
Tworzy wyspecjalizowany moduł wyliczający do określania, które właściwości zależności mają lokalnie ustawione wartości w tym DependencyObjectelemecie . (Odziedziczone po DependencyObject) |
GetOutlinedPathGeometry() |
PathGeometry Pobiera uproszczony kontur wypełnionego Geometryregionu . (Odziedziczone po Geometry) |
GetOutlinedPathGeometry(Double, ToleranceType) |
Pobiera element PathGeometryw ramach określonej tolerancji, czyli uproszczony kontur wypełnionego Geometryregionu obiektu . (Odziedziczone po Geometry) |
GetRenderBounds(Pen) |
Zwraca prostokąt wyrównany do osi, który jest dokładnie wystarczająco duży, aby zawierać geometrię po jego nakreślaniu z określonym Pen. (Odziedziczone po Geometry) |
GetRenderBounds(Pen, Double, ToleranceType) |
Zwraca prostokąt wyrównany do osi, który jest dokładnie wystarczająco duży, aby zawierał geometrię po oznaczeniu określonego elementu , biorąc pod uwagę określony Penwspółczynnik tolerancji. (Odziedziczone po Geometry) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
GetValue(DependencyProperty) |
Zwraca bieżącą obowiązującą wartość właściwości zależności dla tego wystąpienia obiektu DependencyObject. (Odziedziczone po DependencyObject) |
GetWidenedPathGeometry(Pen) |
Pobiera obiekt , który jest kształtem PathGeometry zdefiniowanym przez pociągnięcie na Geometry obiekcie utworzonym przez określony Penelement . (Odziedziczone po Geometry) |
GetWidenedPathGeometry(Pen, Double, ToleranceType) |
Pobiera element , który jest kształtem PathGeometry zdefiniowanym przez pociągnięcie na Geometry określoną Penwartość , biorąc pod uwagę określony współczynnik tolerancji. (Odziedziczone po Geometry) |
InvalidateProperty(DependencyProperty) |
Ponownie oblicza efektywną wartość dla określonej właściwości zależności. (Odziedziczone po DependencyObject) |
IsEmpty() |
Określa, czy ten EllipseGeometry obiekt jest pusty. |
MayHaveCurves() |
Określa, czy ten EllipseGeometry obiekt może mieć zakrzywione segmenty. |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
OnChanged() |
Wywoływana po zmodyfikowaniu bieżącego Freezable obiektu. (Odziedziczone po Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject) |
Zapewnia, że odpowiednie wskaźniki kontekstu są ustanawiane dla DependencyObjectType elementu członkowskiego danych, który został właśnie ustawiony. (Odziedziczone po Freezable) |
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) |
Ten element członkowski obsługuje infrastrukturę Windows Presentation Foundation (WPF) i nie jest przeznaczony do użycia bezpośrednio z kodu. (Odziedziczone po Freezable) |
OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Zastępuje implementację DependencyObjectOnPropertyChanged(DependencyPropertyChangedEventArgs) metody w celu wywołania wszystkich Changed procedur obsługi w odpowiedzi na zmieniającą się właściwość zależności typu Freezable. (Odziedziczone po Freezable) |
ReadLocalValue(DependencyProperty) |
Zwraca wartość lokalną właściwości zależności, jeśli istnieje. (Odziedziczone po DependencyObject) |
ReadPreamble() |
Gwarantuje, że dostęp do obiektu Freezable jest uzyskiwany z prawidłowego wątku. Dziedzicze muszą Freezable wywoływać tę metodę na początku dowolnego interfejsu API, który odczytuje elementy członkowskie danych, które nie są właściwościami zależności. (Odziedziczone po Freezable) |
SetCurrentValue(DependencyProperty, Object) |
Ustawia wartość właściwości zależności bez zmiany źródła wartości. (Odziedziczone po DependencyObject) |
SetValue(DependencyProperty, Object) |
Ustawia wartość lokalną właściwości zależności określonej przez jego identyfikator właściwości zależności. (Odziedziczone po DependencyObject) |
SetValue(DependencyPropertyKey, Object) |
Ustawia wartość lokalną właściwości zależności tylko do odczytu określona przez DependencyPropertyKey identyfikator właściwości zależności. (Odziedziczone po DependencyObject) |
ShouldSerializeProperty(DependencyProperty) |
Zwraca wartość wskazującą, czy procesy serializacji powinny serializować wartość podanej właściwości zależności. (Odziedziczone po DependencyObject) |
ShouldSerializeTransform() |
Pobiera wartość wskazującą, czy wartość Transform właściwości powinna być serializowana. (Odziedziczone po Geometry) |
StrokeContains(Pen, Point) |
Określa, czy określony Point jest zawarty w pociągnięciu generowanym przez zastosowanie określonego Pen elementu do geometrii. (Odziedziczone po Geometry) |
StrokeContains(Pen, Point, Double, ToleranceType) |
Określa, czy określony Point jest zawarty w pociągnięciu generowanym przez zastosowanie określonego Pen do geometrii, biorąc pod uwagę określony margines błędu. (Odziedziczone po Geometry) |
StrokeContainsWithDetail(Pen, Geometry) |
Zwraca wartość, która opisuje przecięcie między określonym Geometry i pociągnięciem utworzonym przez zastosowanie określonego Pen elementu do bieżącej geometrii. (Odziedziczone po Geometry) |
StrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType) |
Pobiera wartość, która opisuje przecięcie między określonym Geometry i pociągnięciem utworzonym przez zastosowanie określonej Pen do bieżącej geometrii, biorąc pod uwagę określony margines błędu. (Odziedziczone po Geometry) |
ToString() |
Tworzy reprezentację ciągu obiektu na podstawie bieżącej kultury. (Odziedziczone po Geometry) |
ToString(IFormatProvider) |
Tworzy reprezentację ciągu obiektu przy użyciu określonych informacji o formatowaniu specyficznym dla kultury. (Odziedziczone po Geometry) |
VerifyAccess() |
Wymusza, że wątek wywołujący ma dostęp do tego DispatcherObjectelementu . (Odziedziczone po DispatcherObject) |
WritePostscript() |
Changed Zgłasza zdarzenie dla Freezable metody i wywołuje jej OnChanged() metodę. Klasy pochodzące z Freezable programu powinny wywoływać tę metodę na końcu dowolnego interfejsu API, który modyfikuje składowe klasy, które nie są przechowywane jako właściwości zależności. (Odziedziczone po Freezable) |
WritePreamble() |
Sprawdza, czy Freezable element nie jest zamrożony i czy jest uzyskiwany dostęp do niego z prawidłowego kontekstu wątkowego. Freezable dziedzicze powinny wywoływać tę metodę na początku dowolnego interfejsu API, który zapisuje do elementów członkowskich danych, które nie są właściwościami zależności. (Odziedziczone po Freezable) |
Zdarzenia
Changed |
Występuje, gdy Freezable obiekt lub, który zawiera, jest modyfikowany. (Odziedziczone po Freezable) |
Jawne implementacje interfejsu
IFormattable.ToString(String, IFormatProvider) |
Formatuje wartość bieżącego wystąpienia przy użyciu określonego formatu. (Odziedziczone po Geometry) |