Geometry Класс

Определение

Классы, которые являются производными от этого абстрактного базового класса, определяют геометрические фигуры. Объекты Geometry можно использовать для обрезки, проверки попадания и отрисовки двумерных графических данных.

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

Комментарии

Сравнение геометрии с фигурой

System.Windows.Shapes.ShapeКласс имеет Fill , Stroke и другие свойства отрисовки, для которых не Geometry хватает производных классов. ShapeКласс является и, FrameworkElement следовательно, участвует в системе макета; его производные классы могут использоваться как содержимое любого элемента, поддерживающего UIElement дочерние элементы.

GeometryКласс, с другой стороны, просто определяет геометрию фигуры и не может визуализировать саму себя. Из-за простоты он имеет более широкий спектр применений.

Функции Freezable: Поскольку он наследуется от Freezable класса, Geometry класс предоставляет несколько специальных функций: Geometry объекты могут быть объявлены как ресурсы, совместно используемые несколькими объектами, которые доступны только для чтения, чтобы повысить производительность, клонировать и сделать потокобезопасными. Дополнительные сведения о различных возможностях, предоставляемых Freezable объектами, см. в разделе Общие сведения об объектах Freezable.

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

Хотя этот класс является абстрактным, он не является общедоступным расширяемым.

Поля

TransformProperty

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

Свойства

Bounds

Получает объект Rect, который задает выровненный по осям ограничивающий прямоугольник данного объекта Geometry.

CanFreeze

Возвращает значение, которое указывает, можно ли сделать объект неизменяемым.

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

Возвращает объект DependencyObjectType , который заключает в оболочку тип CLR данного экземпляра.

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

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.

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

Получает пустой объект.

HasAnimatedProperties

Возвращает значение, которое указывает, сопоставлены ли один или несколько объектов AnimationClock любому из свойств зависимостей этого объекта.

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

Получает значение, указывающее, доступен ли объект для изменения в настоящее время.

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

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).

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

Параметр стандартный допуск, используемый для кусочно-линейной аппроксимации.

Transform

Получает или задает объект Transform, примененный к Geometry.

Методы

ApplyAnimationClock(DependencyProperty, AnimationClock)

Применяет AnimationClock к заданному DependencyProperty. Если свойство уже анимировано, используется эстафетное поведение SnapshotAndReplace.

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

Применяет AnimationClock к заданному DependencyProperty. Если свойство уже является анимированным, используется указанное поведение HandoffBehavior.

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

Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже анимировано, используется поведение перемещения SnapshotAndReplace.

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

Применяет анимацию к указанному DependencyProperty. Анимация начинается при отрисовке следующего кадра. Если указанное свойство уже является анимированным, используется указанное поведение HandoffBehavior.

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

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.

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

Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty.

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

Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey.

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

Создает изменяемый клон данного объекта Geometry, делая глубокие копии значений этого объекта. При копировании свойств зависимостей этот метод копирует ссылки на ресурсы и привязки данных (которые могут уже не быть разрешимыми), но не копирует анимации и их текущие значения.

CloneCore(Freezable)

Делает экземпляр клоном (глубокой копией) указанного объекта Freezable, используя базовые (без анимации) значения свойств.

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

Создает модифицируемый клон данного объекта Geometry, делая глубокие копии текущих значений этого объекта. Ссылки на ресурсы, привязки данных и анимации не копируются, но копируются их текущие значения.

CloneCurrentValueCore(Freezable)

Делает экземпляр изменяемым клоном (глубокой копией) указанного объекта Freezable с использованием текущих значений свойств.

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

Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.

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

Комбинирует две геометрии с использованием заданного GeometryCombineMode и применяет к результирующей геометрии заданное преобразование.

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

Комбинирует две геометрии с использованием заданного GeometryCombineMode и коэффициента допуска и применяет к результирующей геометрии заданное преобразование.

CreateInstance()

Инициализирует новый экземпляр класса Freezable.

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

Если реализуется в производном классе, создает новый экземпляр производного класса Freezable.

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

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.

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

Указывает, содержится ли заданный объект Geometry целиком в текущей геометрии.

FillContains(Geometry, Double, ToleranceType)

Указывает, содержит ли текущая геометрия заданный объект Geometry с учетом заданного предела погрешности.

FillContains(Point)

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

FillContains(Point, Double, ToleranceType)

Указывает, содержит ли данная геометрия заданный объект Point с учетом заданного предела погрешности.

FillContainsWithDetail(Geometry)

Возвращает значение, описывающее пересечение текущей и заданной геометрий.

FillContainsWithDetail(Geometry, Double, ToleranceType)

Возвращает значение, описывающее пересечение текущей и заданной геометрий с учетом заданного предела погрешности.

Freeze()

Делает текущий объект неизменяемым и присваивает его свойству IsFrozen значение true.

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

Делает данный объект Animatable неизменяемым или определяет, может ли он быть сделан неизменяемым.

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

Возвращает не анимированное значение указанного объекта DependencyProperty.

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

Получает заполненную область данного объекта Geometry.

GetArea(Double, ToleranceType)

Получает область с заданным допуском для заполненной области объекта Geometry.

GetAsFrozen()

Создает фиксированную копию объекта Freezable, используя базовые (не анимационные) значения свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.

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

Делает экземпляр зафиксированной копией указанного Freezable, используя базовые (без анимации) значения свойств.

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

Создает фиксированную копию объекта Freezable с использованием текущих значений свойств. Так как копия является фиксированной, копируются только ссылки на фиксированные вложенные объекты.

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

Создает текущий экземпляр замороженной копии указанного объекта Freezable. Если объект имеет анимированные свойства зависимостей, копируются их текущие анимированные значения.

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

Получает объект PathGeometry, являющийся кусочно-линейной аппроксимацией данного объекта Geometry.

GetFlattenedPathGeometry(Double, ToleranceType)

Получает объект PathGeometry в пределах заданного допуска, являющийся кусочно-линейной аппроксимацией данного объекта Geometry.

GetHashCode()

Возвращает хэш-код для данного объекта DependencyObject.

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

Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject.

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

Получает объект PathGeometry в пределах заданного допуска, являющийся упрощенным контуром заполненной области данного объекта Geometry.

GetOutlinedPathGeometry(Double, ToleranceType)

Получает объект PathGeometry в пределах заданного допуска, являющийся упрощенным контуром заполненной области данного объекта Geometry.

GetRenderBounds(Pen)

Возвращает выровненный по осям прямоугольник, достаточно большой для того, чтобы вместить данную геометрию, после ее обведения заданным Pen.

GetRenderBounds(Pen, Double, ToleranceType)

Возвращает выровненный по осям прямоугольник, достаточно большой для того, чтобы вместить данную геометрию, после ее обведения заданным Pen с использованием указанного коэффициента допуска.

GetType()

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

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

Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject.

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

Получает PathGeometry, представляющий собой фигуру, определенную обводкой объекта Geometry, созданной заданным объектом Pen, с учетом заданного коэффициента допуска.

GetWidenedPathGeometry(Pen, Double, ToleranceType)

Получает PathGeometry, представляющий собой фигуру, определенную обводкой объекта Geometry, созданной заданным объектом Pen, с учетом заданного коэффициента допуска.

InvalidateProperty(DependencyProperty)

Повторно вычисляет действующее значение для указанного свойства зависимостей.

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

Определяет, является ли данный объект пустым.

MayHaveCurves()

Определяет, может ли данный объект иметь криволинейные сегменты.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

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

Вызывается при изменении текущего объекта Freezable.

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

Обеспечивает создание соответствующих указателей контекста для элемента данных типа DependencyObjectType, который был только что задан.

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

этот элемент поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для непосредственного использования из кода.

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

Переопределяет реализацию DependencyObject для OnPropertyChanged(DependencyPropertyChangedEventArgs), чтобы также вызвать любой обработчик Changed в ответ на изменение свойства зависимостей типа Freezable.

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

Создает новый экземпляр Geometry из заданной строки, используя текущий язык и региональные параметры.

ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если таковое существует.

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

Обеспечивает доступ к Freezable из допустимого потока. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который считывает элементы данных, не являющиеся свойствами зависимостей.

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

Задает значение свойства зависимостей, не меняя источник значения.

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

Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства.

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

Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей.

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

Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей.

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

Получает значение, которое указывает, должно ли значение свойства Transform быть сериализовано.

StrokeContains(Pen, Point)

Определяет, содержится ли заданный объект Point в обводке, полученной путем применения заданного Pen к данной геометрии.

StrokeContains(Pen, Point, Double, ToleranceType)

Определяет, содержится ли заданный объект Point в обводке, полученной путем применения заданного Pen к данной геометрии, с учетом заданного предела погрешности.

StrokeContainsWithDetail(Pen, Geometry)

Возвращает значение, описывающее пересечение между заданным объектом Geometry и обводкой, созданной путем применения заданного объекта Pen к текущей геометрии.

StrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType)

Получает значение, описывающее пересечение между заданным объектом Geometry и обводкой, созданной путем применения заданного объекта Pen к текущей геометрии с учетом заданного предела погрешности.

ToString()

Создает строковое представление объекта на базе региональных параметров.

ToString(IFormatProvider)

Создает строковое представление данного объекта с учетом сведений о форматировании, связанных с определенным языком и региональными параметрами.

VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.

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

Вызывает событие Changed для объекта Freezable и вызывает его метод OnChanged(). Классы, производные от Freezable, должны вызывать этот метод в конце любого API, который изменяет члены класса, не сохраненные в виде свойств зависимостей.

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

Проверяет, что объект Freezable не заморожен и доступ к нему осуществляется из допустимого контекста потока. Наследники объекта Freezable должны вызывать данный метод в начале любого API, который выполняет запись в элементах данных, не являющихся свойствами зависимостей.

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

События

Changed

Происходит, когда изменяется класс Freezable или объект, который входит в его состав.

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

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

IFormattable.ToString(String, IFormatProvider)

Форматирует значение текущего экземпляра, используя указанный формат.

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

См. также раздел