Geometry Класс

Определение

Классы, производные от этого абстрактного базового класса, определяют геометрические фигуры.Classes that derive from this abstract base class define geometric shapes. Объекты Geometry можно использовать для обрезки, проверки попадания и отрисовки двумерных графических данных.Geometry objects can be used for clipping, hit-testing, and rendering 2-D graphic data.

public ref class Geometry abstract : System::Windows::Media::Animation::Animatable, IFormattable
[System.ComponentModel.TypeConverter(typeof(System.Windows.Media.GeometryConverter))]
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class Geometry : System.Windows.Media.Animation.Animatable, IFormattable
type Geometry = class
    inherit Animatable
    interface IFormattable
    interface DUCE.IResource
Public MustInherit Class Geometry
Inherits Animatable
Implements IFormattable
Наследование
Производный
Атрибуты
Реализации

Комментарии

Сравнение геометрии с фигуройGeometry Compared to Shape

System.Windows.Shapes.Shape Класс Geometry имеет, иStrokeдругие свойства отрисовки, для которых не хватает производных классов. FillThe System.Windows.Shapes.Shape class has a Fill, Stroke, and other rendering properties that Geometry and its derived classes lack. Класс является и, следовательно, участвует в системе макета; его производные классы могут использоваться как содержимое любого элемента, поддерживающего UIElement дочерние элементы. FrameworkElement ShapeThe Shape class is a FrameworkElement and therefore participates in the layout system; its derived classes can be used as the content of any element that supports UIElement children.

Geometry Класс, с другой стороны, просто определяет геометрию фигуры и не может визуализировать саму себя.The Geometry class, on the other hand, simply defines the geometry of a shape, and cannot render itself. Из-за простоты он имеет более широкий спектр применений.Because of its simplicity, it has a wider range of uses.

Функции Freezable: Поскольку он наследуется от Freezable класса Geometry , класс предоставляет несколько специальных функций: Geometry объекты могут быть объявлены как ресурсы, совместно используемые несколькими объектами, сделаны доступными только для чтения для повышения производительности, клонирования и является потокобезопасным.Freezable Features: Because it inherits from the Freezable class, the Geometry class provides several special features: Geometry objects can be declared as resources, shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. Дополнительные сведения о различных возможностях, предоставляемых Freezable объектами, см. в разделе Общие сведения об объектах Freezable.For more information about the different features provided by Freezable objects, see Freezable Objects Overview.

Примечания для тех, кто реализует этот метод

Хотя этот класс является абстрактным, он не является общедоступным расширяемым.Although this class is abstract, it is not publicly extensible.

Поля

TransformProperty

Идентифицирует свойство зависимостей Transform.Identifies the Transform dependency property.

Свойства

Bounds

Получает объект Rect, который задает выровненный по осям ограничивающий прямоугольник данного объекта Geometry.Gets a Rect that specifies the axis-aligned bounding box of the Geometry.

CanFreeze

Возвращает значение, которое указывает, можно ли сделать объект неизменяемым.Gets a value that indicates whether the object can be made unmodifiable.

(Унаследовано от Freezable)
DependencyObjectType

Возвращает DependencyObjectType, который создает обертку для типа CLRCLR данного экземпляра.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(Унаследовано от DependencyObject)
Dispatcher

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Унаследовано от DispatcherObject)
Empty

Получает пустой объект.Gets an empty object.

HasAnimatedProperties

Возвращает значение, которое указывает, сопоставлены ли один или несколько объектов AnimationClock любому из свойств зависимостей этого объекта.Gets a value that indicates whether one or more AnimationClock objects is associated with any of this object's dependency properties.

(Унаследовано от Animatable)
IsFrozen

Получает значение, указывающее, доступен ли объект для изменения в настоящее время.Gets a value that indicates whether the object is currently modifiable.

(Унаследовано от Freezable)
IsSealed

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).Gets a value that indicates whether this instance is currently sealed (read-only).

(Унаследовано от DependencyObject)
StandardFlatteningTolerance

Параметр стандартный допуск, используемый для кусочно-линейной аппроксимации.Gets the standard tolerance used for polygonal approximation.

Transform

Получает или задает объект Transform, примененный к Geometry.Gets or sets the Transform object applied to a Geometry.

Методы

ApplyAnimationClock(DependencyProperty, AnimationClock)

Применяет AnimationClock к заданному DependencyProperty.Applies an AnimationClock to the specified DependencyProperty. Если свойство уже анимировано, используется эстафетное поведение SnapshotAndReplace.If the property is already animated, the SnapshotAndReplace handoff behavior is used.

(Унаследовано от Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Применяет AnimationClock к заданному DependencyProperty.Applies an AnimationClock to the specified DependencyProperty. Если свойство уже является анимированным, используется указанное поведение HandoffBehavior.If the property is already animated, the specified HandoffBehavior is used.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Применяет анимацию к указанному DependencyProperty.Applies an animation to the specified DependencyProperty. Анимация начинается при отрисовке следующего кадра.The animation is started when the next frame is rendered. Если указанное свойство уже анимировано, используется поведение перемещения SnapshotAndReplace.If the specified property is already animated, the SnapshotAndReplace handoff behavior is used.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Применяет анимацию к указанному DependencyProperty.Applies an animation to the specified DependencyProperty. Анимация начинается при отрисовке следующего кадра.The animation is started when the next frame is rendered. Если указанное свойство уже является анимированным, используется указанное поведение HandoffBehavior.If the specified property is already animated, the specified HandoffBehavior is used.

(Унаследовано от Animatable)
CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Унаследовано от DispatcherObject)
ClearValue(DependencyProperty)

Очищает локальное значение свойства.Clears the local value of a property. Очищаемое свойство задается идентификатором DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

(Унаследовано от DependencyObject)
ClearValue(DependencyPropertyKey)

Очищает локальное значение свойства, доступного только для чтения.Clears the local value of a read-only property. Очищаемое свойство задается ключом DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

(Унаследовано от DependencyObject)
Clone()

Создает редактируемую копию объекта Geometry, что позволяет выполнить глубокое копирование значений объекта.Creates a modifiable clone of the Geometry, making deep copies of the object's values. При копировании свойств зависимостей этот метод копирует ссылки на ресурсы и привязки данных (которые могут уже не быть разрешимыми), но не копирует анимации и их текущие значения.When copying dependency properties, this method copies resource references and data bindings (but they might no longer resolve) but not animations or their current values.

CloneCore(Freezable)

Делает экземпляр клоном (глубокой копией) указанного объекта Freezable, используя базовые (без анимации) значения свойств.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values.

(Унаследовано от Freezable)
CloneCurrentValue()

Создает модифицируемый клон данного объекта Geometry, делая глубокие копии текущих значений этого объекта.Creates a modifiable clone of the Geometry object, making deep copies of the object's current values. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения.Resource references, data bindings, and animations are not copied, but their current values are.

CloneCurrentValueCore(Freezable)

Делает экземпляр изменяемым клоном (глубокой копией) указанного объекта Freezable с использованием текущих значений свойств.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values.

(Унаследовано от Freezable)
CoerceValue(DependencyProperty)

Приводит значение указанного свойства зависимостей.Coerces the value of the specified dependency property. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Унаследовано от DependencyObject)
Combine(Geometry, Geometry, GeometryCombineMode, Transform)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и применяет к результирующей геометрии заданное преобразование.Combines the two geometries using the specified GeometryCombineMode and applies the specified transform to the resulting geometry.

Combine(Geometry, Geometry, GeometryCombineMode, Transform, Double, ToleranceType)

Комбинирует две геометрии с использованием заданного GeometryCombineMode и коэффициента допуска и применяет к результирующей геометрии заданное преобразование.Combines the two geometries using the specified GeometryCombineMode and tolerance factor, and applies the specified transform to the resulting geometry.

CreateInstance()

Инициализирует новый экземпляр класса Freezable.Initializes a new instance of the Freezable class.

(Унаследовано от Freezable)
CreateInstanceCore()

Если реализуется в производном классе, создает новый экземпляр производного класса Freezable.When implemented in a derived class, creates a new instance of the Freezable derived class.

(Унаследовано от Freezable)
Equals(Object)

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Унаследовано от DependencyObject)
FillContains(Geometry)

Указывает, содержится ли заданный объект Geometry целиком в текущей геометрии.Indicates whether the current geometry completely contains the specified Geometry.

FillContains(Geometry, Double, ToleranceType)

Указывает, содержит ли текущая геометрия заданный объект Geometry с учетом заданного предела погрешности.Indicates whether the current geometry contains the specified Geometry, given the specified margin of error.

FillContains(Point)

Определяет, содержит ли данная геометрия заданный объект Point.Indicates whether the geometry contains the specified Point.

FillContains(Point, Double, ToleranceType)

Указывает, содержит ли данная геометрия заданный объект Point с учетом заданного предела погрешности.Indicates whether the geometry contains the specified Point, given the specified margin of error.

FillContainsWithDetail(Geometry)

Возвращает значение, описывающее пересечение текущей и заданной геометрий.Returns a value that describes the intersection between the current geometry and the specified geometry.

FillContainsWithDetail(Geometry, Double, ToleranceType)

Возвращает значение, описывающее пересечение текущей и заданной геометрий с учетом заданного предела погрешности.Returns a value that describes the intersection between the current geometry and the specified geometry, given the specified margin of error.

Freeze()

Делает текущий объект неизменяемым и присваивает его свойству IsFrozen значение true.Makes the current object unmodifiable and sets its IsFrozen property to true.

(Унаследовано от Freezable)
FreezeCore(Boolean)

Делает данный объект Animatable неизменяемым или определяет, может ли он быть сделан неизменяемым.Makes this Animatable object unmodifiable or determines whether it can be made unmodifiable.

(Унаследовано от Animatable)
GetAnimationBaseValue(DependencyProperty)

Возвращает не анимированное значение указанного объекта DependencyProperty.Returns the non-animated value of the specified DependencyProperty.

(Унаследовано от Animatable)
GetArea()

Получает заполненную область данного объекта Geometry.Gets the area of the filled region of the Geometry object.

GetArea(Double, ToleranceType)

Получает область с заданным допуском для заполненной области объекта Geometry.Gets the area, within the specified tolerance, of the filled region of the Geometry object.

GetAsFrozen()

Создает фиксированную копию объекта Freezable, используя базовые (не анимационные) значения свойств.Creates a frozen copy of the Freezable, using base (non-animated) property values. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Унаследовано от Freezable)
GetAsFrozenCore(Freezable)

Делает экземпляр зафиксированной копией указанного Freezable, используя базовые (без анимации) значения свойств.Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values.

(Унаследовано от Freezable)
GetCurrentValueAsFrozen()

Создает фиксированную копию объекта Freezable с использованием текущих значений свойств.Creates a frozen copy of the Freezable using current property values. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Унаследовано от Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Создает текущий экземпляр замороженной копии указанного объекта Freezable.Makes the current instance a frozen clone of the specified Freezable. Если объект имеет анимированные свойства зависимостей, копируются их текущие анимированные значения.If the object has animated dependency properties, their current animated values are copied.

(Унаследовано от Freezable)
GetFlattenedPathGeometry()

Получает объект PathGeometry, являющийся кусочно-линейной аппроксимацией данного объекта Geometry.Gets a PathGeometry that is a polygonal approximation of the Geometry object.

GetFlattenedPathGeometry(Double, ToleranceType)

Получает объект PathGeometry в пределах заданного допуска, являющийся кусочно-линейной аппроксимацией данного объекта Geometry.Gets a PathGeometry, within the specified tolerance, that is a polygonal approximation of the Geometry object.

GetHashCode()

Возвращает хэш-код для данного объекта DependencyObject.Gets a hash code for this DependencyObject.

(Унаследовано от DependencyObject)
GetLocalValueEnumerator()

Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Унаследовано от DependencyObject)
GetOutlinedPathGeometry()

Получает объект PathGeometry в пределах заданного допуска, являющийся упрощенным контуром заполненной области данного объекта Geometry.Gets a PathGeometry that is a simplified outline of the filled region of the Geometry.

GetOutlinedPathGeometry(Double, ToleranceType)

Получает объект PathGeometry в пределах заданного допуска, являющийся упрощенным контуром заполненной области данного объекта Geometry.Gets a PathGeometry, within the specified tolerance, that is a simplified outline of the filled region of the Geometry.

GetRenderBounds(Pen)

Возвращает выровненный по осям прямоугольник, достаточно большой для того, чтобы вместить данную геометрию, после ее обведения заданным Pen.Returns an axis-aligned rectangle that is exactly large enough to contain the geometry after it has been outlined with the specified Pen.

GetRenderBounds(Pen, Double, ToleranceType)

Возвращает выровненный по осям прямоугольник, достаточно большой для того, чтобы вместить данную геометрию, после ее обведения заданным Pen с использованием указанного коэффициента допуска.Returns an axis-aligned rectangle that is exactly large enough to contain the geometry after it has been outlined with the specified Pen, given the specified tolerance factor.

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Унаследовано от DependencyObject)
GetWidenedPathGeometry(Pen)

Получает PathGeometry, представляющий собой фигуру, определенную обводкой объекта Geometry, созданной заданным объектом Pen, с учетом заданного коэффициента допуска.Gets a PathGeometry that is the shape defined by the stroke on the Geometry produced by the specified Pen.

GetWidenedPathGeometry(Pen, Double, ToleranceType)

Получает PathGeometry, представляющий собой фигуру, определенную обводкой объекта Geometry, созданной заданным объектом Pen, с учетом заданного коэффициента допуска.Gets a PathGeometry that is the shape defined by the stroke on the Geometry produced by the specified Pen, given the specified tolerance factor.

InvalidateProperty(DependencyProperty)

Повторно вычисляет действующее значение для указанного свойства зависимостей.Re-evaluates the effective value for the specified dependency property.

(Унаследовано от DependencyObject)
IsEmpty()

Определяет, является ли данный объект пустым.Determines whether the object is empty.

MayHaveCurves()

Определяет, может ли данный объект иметь криволинейные сегменты.Determines whether the object might have curved segments.

MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
OnChanged()

Вызывается при изменении текущего объекта Freezable.Called when the current Freezable object is modified.

(Унаследовано от Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Обеспечивает создание соответствующих указателей контекста для элемента данных типа DependencyObjectType, который был только что задан.Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set.

(Унаследовано от Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования из кода.This member supports the Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

(Унаследовано от Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Переопределяет реализацию DependencyObject для OnPropertyChanged(DependencyPropertyChangedEventArgs), чтобы также вызвать любой обработчик Changed в ответ на изменение свойства зависимостей типа Freezable.Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable.

(Унаследовано от Freezable)
Parse(String)

Создает новый экземпляр Geometry из заданной строки, используя текущий язык и региональные параметры.Creates a new Geometry instance from the specified string using the current culture.

ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если таковое существует.Returns the local value of a dependency property, if it exists.

(Унаследовано от DependencyObject)
ReadPreamble()

Обеспечивает доступ к Freezable из допустимого потока.Ensures that the Freezable is being accessed from a valid thread. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который считывает элементы данных, не являющиеся свойствами зависимостей.Inheritors of Freezable must call this method at the beginning of any API that reads data members that are not dependency properties.

(Унаследовано от Freezable)
SetCurrentValue(DependencyProperty, Object)

Задает значение свойства зависимостей, не меняя источник значения.Sets the value of a dependency property without changing its value source.

(Унаследовано от DependencyObject)
SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства.Sets the local value of a dependency property, specified by its dependency property identifier.

(Унаследовано от DependencyObject)
SetValue(DependencyPropertyKey, Object)

Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Унаследовано от DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Унаследовано от DependencyObject)
ShouldSerializeTransform()

Получает значение, которое указывает, должно ли значение свойства Transform быть сериализовано.Gets a value that indicates whether the value of the Transform property should be serialized.

StrokeContains(Pen, Point)

Определяет, содержится ли заданный объект Point в обводке, полученной путем применения заданного Pen к данной геометрии.Determines whether the specified Point is contained in the stroke produced by applying the specified Pen to the geometry.

StrokeContains(Pen, Point, Double, ToleranceType)

Определяет, содержится ли заданный объект Point в обводке, полученной путем применения заданного Pen к данной геометрии, с учетом заданного предела погрешности.Determines whether the specified Point is contained in the stroke produced by applying the specified Pen to the geometry, given the specified margin of error.

StrokeContainsWithDetail(Pen, Geometry)

Возвращает значение, описывающее пересечение между заданным объектом Geometry и обводкой, созданной путем применения заданного объекта Pen к текущей геометрии.Returns a value that describes the intersection between the specified Geometry and the stroke created by applying the specified Pen to the current geometry.

StrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType)

Получает значение, описывающее пересечение между заданным объектом Geometry и обводкой, созданной путем применения заданного объекта Pen к текущей геометрии с учетом заданного предела погрешности.Gets a value that describes the intersection between the specified Geometry and the stroke created by applying the specified Pen to the current geometry, given the specified margin of error.

ToString()

Создает строковое представление объекта на базе региональных параметров.Creates a string representation of the object based on the current culture.

ToString(IFormatProvider)

Создает строковое представление данного объекта с учетом сведений о форматировании, связанных с определенным языком и региональными параметрами.Creates a string representation of the object using the specified culture-specific formatting information.

VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Унаследовано от DispatcherObject)
WritePostscript()

Вызывает событие Changed для объекта Freezable и вызывает его метод OnChanged().Raises the Changed event for the Freezable and invokes its OnChanged() method. Классы, производные от Freezable, должны вызывать этот метод в конце любого API, который изменяет члены класса, не сохраненные в виде свойств зависимостей.Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties.

(Унаследовано от Freezable)
WritePreamble()

Проверяет, что объект Freezable не заморожен и доступ к нему осуществляется из допустимого контекста потока.Verifies that the Freezable is not frozen and that it is being accessed from a valid threading context. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который выполняет запись в элементах данных, не являющихся свойствами зависимостей.Freezable inheritors should call this method at the beginning of any API that writes to data members that are not dependency properties.

(Унаследовано от Freezable)

События

Changed

Происходит, когда изменяется класс Freezable или объект, который входит в его состав.Occurs when the Freezable or an object it contains is modified.

(Унаследовано от Freezable)

Явные реализации интерфейса

IFormattable.ToString(String, IFormatProvider)

Форматирует значение текущего экземпляра с использованием заданного формата.Formats the value of the current instance using the specified format.

Применяется к

Дополнительно