Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés
Esta documentación está archivada y no tiene mantenimiento.

Geometry (Clase)

Las clases que se derivan de esta clase base abstracta definen formas geométricas. Los objetos Geometry se pueden utilizar para el recorte, la comprobación de visitas y la representación de datos de gráficos 2D.

Espacio de nombres:  System.Windows.Media
Ensamblado:  PresentationCore (en PresentationCore.dll)

[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
[TypeConverterAttribute(typeof(GeometryConverter))]
public abstract class Geometry : Animatable, 
	IFormattable

El tipo Geometry expone los siguientes miembros.

  NombreDescripción
Propiedad públicaBoundsObtiene una estructura Rect que especifica el rectángulo de selección alineado con el eje de Geometry.
Propiedad públicaCanFreezeObtiene un valor que indica si el objeto se puede convertir en no modificable. (Se hereda de Freezable).
Propiedad públicaDependencyObjectTypeObtiene el objeto DependencyObjectType que ajusta el tipo CLR de esta instancia.  (Se hereda de DependencyObject).
Propiedad públicaDispatcherObtiene el objeto Dispatcher al que está asociado DispatcherObject. (Se hereda de DispatcherObject).
Propiedad públicaMiembro estáticoEmptyObtiene un objeto vacío.
Propiedad públicaHasAnimatedPropertiesObtiene un valor que indica si uno o más objetos AnimationClock se asocian a cualquiera de las propiedades de dependencia de este objeto. (Se hereda de Animatable).
Propiedad públicaIsFrozenObtiene un valor que indica si el objeto es modificable actualmente. (Se hereda de Freezable).
Propiedad públicaIsSealedObtiene un valor que indica si esta instancia está actualmente sellada (es de solo lectura). (Se hereda de DependencyObject).
Propiedad públicaMiembro estáticoStandardFlatteningToleranceObtiene la tolerancia estándar utilizada para la aproximación poligonal.
Propiedad públicaTransformObtiene o establece el objeto Transform aplicado a Geometry.
Arriba

  NombreDescripción
Método públicoApplyAnimationClock(DependencyProperty, AnimationClock)Aplica un objeto AnimationClock al objeto DependencyProperty especificado. Si la propiedad ya está animada, se usa el comportamiento de entrega de SnapshotAndReplace. (Se hereda de Animatable).
Método públicoApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)Aplica un objeto AnimationClock al objeto DependencyProperty especificado. Si la propiedad ya está animada, se usa el objeto HandoffBehavior especificado. (Se hereda de Animatable).
Método públicoBeginAnimation(DependencyProperty, AnimationTimeline)Aplica una animación al objeto DependencyProperty especificado. La animación empieza cuando se representa el siguiente fotograma. Si la propiedad especificada ya está animada, se usa el comportamiento de entrega de SnapshotAndReplace. (Se hereda de Animatable).
Método públicoBeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)Aplica una animación al objeto DependencyProperty especificado. La animación empieza cuando se representa el siguiente fotograma. Si la propiedad especificada ya está animada, se usa el objeto HandoffBehavior especificado. (Se hereda de Animatable).
Método públicoCheckAccess Determina si el subproceso de la llamada tiene acceso a este DispatcherObject. (Se hereda de DispatcherObject).
Método públicoClearValue(DependencyProperty) Borra el valor local de una propiedad. La propiedad que se borrará se especifica mediante un identificador de DependencyProperty. (Se hereda de DependencyObject).
Método públicoClearValue(DependencyPropertyKey) Borra el valor local de una propiedad de sólo lectura. La propiedad que se borrará es especificada por DependencyPropertyKey. (Se hereda de DependencyObject).
Método públicoCloneCrea un clon modificable del objeto Geometry y hace copias en profundidad de sus valores. Cuando se copian propiedades de dependencia, este método copia las referencias de recursos y enlaces de datos (aunque no se resuelvan), pero no copia las animaciones ni sus valores actuales.
Método protegidoCloneCoreConvierte la instancia en un clon (copia en profundidad) de la clase Freezable especificada con los valores de la propiedad base (no animada). (Se hereda de Freezable).
Método públicoCloneCurrentValueCrea un clon modificable del objeto Geometry y hace copias en profundidad de sus valores actuales. Las referencias de recursos, los enlaces de datos y las animaciones no se copian, pero sus valores actuales sí.
Método protegidoCloneCurrentValueCoreConvierte la instancia en un clon modificable (en profundidad) del objeto Freezable especificado utilizando los valores de las propiedades actuales. (Se hereda de Freezable).
Método públicoCoerceValue Fuerza el valor de propiedad de la dependencia especificada. Esto se logra a cualquier función de CoerceValueCallback especificada en los metadatos de propiedad para la propiedad de dependencia tal como existe en el objeto DependencyObject que llama. (Se hereda de DependencyObject).
Método públicoMiembro estáticoCombine(Geometry, Geometry, GeometryCombineMode, Transform)Combina las dos geometrías mediante el modo GeometryCombineMode especificado y aplica la transformación indicada a la geometría resultante.
Método públicoMiembro estáticoCombine(Geometry, Geometry, GeometryCombineMode, Transform, Double, ToleranceType)Combina las dos geometrías utilizando el factor de tolerancia y el modo GeometryCombineMode especificados y aplica la transformación indicada a la geometría resultante.
Método protegidoCreateInstanceInicializa una nueva instancia de la clase Freezable. (Se hereda de Freezable).
Método protegidoCreateInstanceCoreCuando se implementa en una clase derivada, crea una nueva instancia de la clase Freezable derivada. (Se hereda de Freezable).
Método públicoEquals Determina si un DependencyObject proporcionado es equivalente a DependencyObject actual. (Se hereda de DependencyObject).
Método públicoFillContains(Geometry)Indica si la geometría actual contiene íntegramente el objeto Geometry especificado.
Método públicoFillContains(Point)Indica si la geometría contiene el objeto Point especificado.
Método públicoFillContains(Geometry, Double, ToleranceType)Indica si la geometría actual contiene el objeto Geometry especificado, dado el margen de error especificado.
Método públicoFillContains(Point, Double, ToleranceType)Indica si la geometría contiene el objeto Point especificado, dado el margen de error especificado.
Método públicoFillContainsWithDetail(Geometry)Devuelve un valor que describe la intersección entre la actual geometría y la geometría especificada.
Método públicoFillContainsWithDetail(Geometry, Double, ToleranceType)Devuelve un valor que describe la intersección entre la geometría actual y la geometría especificada, dado el margen de error especificado.
Método protegidoFinalize Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Se hereda de Object).
Método públicoFreeze()Convierte el objeto actual en no modificable y establece su propiedad IsFrozen en true. (Se hereda de Freezable).
Método protegidoFreezeCoreConvierte este objeto Animatable en no modificable o determina si se puede convertir en no modificable. (Se hereda de Animatable).
Método públicoGetAnimationBaseValueDevuelve el valor no animado del objeto DependencyProperty especificado. (Se hereda de Animatable).
Método públicoGetArea()Obtiene el área de la región rellena del objeto Geometry.
Método públicoGetArea(Double, ToleranceType)Obtiene el área, dentro de la tolerancia especificada, de la región rellena del objeto Geometry.
Método públicoGetAsFrozenCrea una copia inmovilizada de Freezable, con los valores de la propiedad base (no animada). Puesto que se inmoviliza la copia, se copia cualquier subobjeto inmovilizado por referencia. (Se hereda de Freezable).
Método protegidoGetAsFrozenCoreConvierte la instancia en un clon inmovilizado de la clase Freezable especificada con los valores de la propiedad base (no animada). (Se hereda de Freezable).
Método públicoGetCurrentValueAsFrozenCrea una copia inmovilizada de Freezable con los valores de propiedad actuales. Puesto que se inmoviliza la copia, se copia cualquier subobjeto inmovilizado por referencia. (Se hereda de Freezable).
Método protegidoGetCurrentValueAsFrozenCoreConvierte la instancia actual en un clon inmovilizado de la clase Freezable especificada. Si el objeto tiene propiedades de dependencia animadas, se copian sus valores animados actuales. (Se hereda de Freezable).
Método públicoGetFlattenedPathGeometry()Obtiene PathGeometry, que es una aproximación poligonal del objeto Geometry.
Método públicoGetFlattenedPathGeometry(Double, ToleranceType)Obtiene PathGeometry, dentro de la tolerancia especificada, que es una aproximación poligonal del objeto Geometry.
Método públicoGetHashCode Obtiene un código hash para este DependencyObject. (Se hereda de DependencyObject).
Método públicoGetLocalValueEnumeratorCrea un enumerador especializado para determinar qué propiedades de dependencia han establecido localmente los valores en DependencyObject. (Se hereda de DependencyObject).
Método públicoGetOutlinedPathGeometry()Obtiene PathGeometry, que es un contorno simplificado de la región rellena de Geometry.
Método públicoGetOutlinedPathGeometry(Double, ToleranceType)Obtiene PathGeometry, dentro de la tolerancia especificada, que es un contorno simplificado de la región rellena de Geometry.
Método públicoGetRenderBounds(Pen)Devuelve un rectángulo alineado con el eje que es suficientemente grande como para contener la geometría después de que se haya dibujado con el objeto Pen especificado.
Método públicoGetRenderBounds(Pen, Double, ToleranceType)Devuelve un rectángulo alineado con el eje que es suficientemente grande como para contener la geometría después de que se haya dibujado con el objeto Pen especificado y dado el factor de tolerancia especificado.
Método públicoGetType Obtiene el Type de la instancia actual. (Se hereda de Object).
Método públicoGetValue Devuelve el valor efectivo actual de propiedad de dependencia en esta instancia de DependencyObject. (Se hereda de DependencyObject).
Método públicoGetWidenedPathGeometry(Pen)Obtiene PathGeometry, que es la forma definida por el trazo en el objeto Geometry generado por el objeto Pen especificado.
Método públicoGetWidenedPathGeometry(Pen, Double, ToleranceType)Obtiene PathGeometry, que es la forma definida por el trazo en el objeto Geometry generado por el objeto Pen especificado y dado el factor de tolerancia especificado.
Método públicoInvalidatePropertyVuelve a evaluar el valor efectivo para la propiedad de dependencia especificada. (Se hereda de DependencyObject).
Método públicoIsEmptyDetermina si el objeto está vacío.
Método públicoMayHaveCurvesDetermina si el objeto puede tener segmentos curvados.
Método protegidoMemberwiseClone Crea una copia superficial del Object actual. (Se hereda de Object).
Método protegidoOnChangedSe llama cuando se modifica el objeto Freezable actual. (Se hereda de Freezable).
Método protegidoOnFreezablePropertyChanged(DependencyObject, DependencyObject)Se asegura de que se establecen los punteros contextuales adecuados para un miembro de datos DependencyObjectType que se acaba de establecer. (Se hereda de Freezable).
Método protegidoOnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)Este miembro admite la infraestructura de Windows Presentation Foundation (WPF) y no se debe usar directamente desde el código. (Se hereda de Freezable).
Método protegidoOnPropertyChangedInvalida la implementación de DependencyObject de OnPropertyChanged para invocar también cualquier controlador Changed como respuesta a un cambio de propiedad de dependencia de tipo Freezable. (Se hereda de Freezable).
Método públicoMiembro estáticoParseCrea una nueva instancia de Geometry a partir de la cadena especificada utilizando la actual referencia cultural.
Método públicoReadLocalValue Devuelve el valor local de propiedad de dependencia, si existe. (Se hereda de DependencyObject).
Método protegidoReadPreambleSe asegura de que se tiene acceso a Freezable desde un subproceso válido. Los herederos de Freezable deben llamar a este método al inicio de las API que lean miembros de datos que no son propiedades de dependencia. (Se hereda de Freezable).
Método públicoSetCurrentValueEstablece el valor de una propiedad de dependencia sin cambiar el origen de su valor. (Se hereda de DependencyObject).
Método públicoSetValue(DependencyProperty, Object)Establece el valor local de una propiedad de dependencia, especificado por su identificador de propiedad de dependencia. (Se hereda de DependencyObject).
Método públicoSetValue(DependencyPropertyKey, Object)Establece el valor local de una propiedad de dependencia de sólo lectura, especificado por el identificador DependencyPropertyKey de la propiedad de dependencia. (Se hereda de DependencyObject).
Método protegidoShouldSerializePropertyDevuelve un valor que indica si los procesos de serialización deben serializar el valor de la propiedad de dependencia proporcionada. (Se hereda de DependencyObject).
Método públicoShouldSerializeTransformObtiene un valor que indica si debe serializarse el valor de la propiedad Transform.
Método públicoStrokeContains(Pen, Point)Determina si el objeto Point especificado está incluido en el trazo que se ha generado aplicando a la geometría el objeto Pen especificado.
Método públicoStrokeContains(Pen, Point, Double, ToleranceType)Determina si el objeto Point especificado se encuentra en el trazo que se ha generado aplicando a la geometría el objeto Pen especificado, dado el margen de error especificado.
Método públicoStrokeContainsWithDetail(Pen, Geometry)Devuelve un valor que describe la intersección entre el objeto Geometry especificado y el trazo que se ha creado aplicando a la geometría actual el objeto Pen especificado.
Método públicoStrokeContainsWithDetail(Pen, Geometry, Double, ToleranceType)Obtiene un valor que describe la intersección entre el objeto Geometry especificado y el trazo que se ha creado aplicando a la geometría actual el objeto Pen especificado, dado el margen de error indicado.
Método públicoToString()Crea una representación en forma de cadena del objeto basándose en la actual referencia cultural. (Invalida a Object.ToString()).
Método públicoToString(IFormatProvider)Crea una representación en forma de cadena del objeto utilizando la información de formato específica de la referencia cultural especificada.
Método públicoVerifyAccessExige que el subproceso de la llamada tenga acceso a DispatcherObject. (Se hereda de DispatcherObject).
Método protegidoWritePostscriptProvoca el evento Changed de Freezable e invoca su método OnChanged. Las clases que se derivan de Freezable deben llamar a este método al final de cualquier API que modifique miembros de clase que no se almacenen como propiedades de dependencia. (Se hereda de Freezable).
Método protegidoWritePreambleComprueba que no se inmovilice Freezable y que se tiene acceso desde un contexto de subproceso válido. Los herederos de Freezable deben llamar a este método al inicio de cualquier API que escriba en miembros de datos que no sean propiedades de dependencia. (Se hereda de Freezable).
Arriba

  NombreDescripción
Evento públicoChangedSe produce cuando se modifican la clase Freezable o un objeto que la contiene. (Se hereda de Freezable).
Arriba

  NombreDescripción
Campo públicoMiembro estáticoTransformPropertyIdentifica la propiedad de dependencia Transform.
Arriba

  NombreDescripción
Implementación explícita de interfacesMétodo privadoIFormattable.ToStringAplica formato al valor de la instancia actual utilizando el formato especificado.
Arriba

Comparación entre Geometry y Shape

La clase System.Windows.Shapes.Shape tiene las propiedades Fill, Stroke y otras propiedades de representación que Geometry y sus clases derivadas no tienen. La clase Shape es una clase FrameworkElement y, por consiguiente, participa en el sistema de diseño; sus clases derivadas pueden utilizarse como contenido de cualquier elemento que admita elementos secundarios de UIElement.

La clase Geometry, por otro lado, simplemente define la geometría de una forma y no puede representarse a sí misma. Debido a su simplicidad, se puede usar de manera más amplia.

Características de elementos Freezable: Como hereda de la clase Freezable, la clase Geometry proporciona varias características especiales: los objetos Geometry se pueden declarar como recursos, se pueden compartir entre varios objetos, se puede hacer que sean de sólo lectura para mejorar el rendimiento, se pueden clonar y se pueden hacer seguros para subprocesos. Para obtener más información acerca de las diferentes características que proporcionan los objetos Freezable, consulte Información general sobre objetos Freezable.

Notas para los herederos

Aunque esta clase es abstracta, no es públicamente extensible.

.NET Framework

Compatible con: 4, 3.5, 3.0

.NET Framework Client Profile

Compatible con: 4, 3.5 SP1

Windows 7, Windows Vista SP1 o posterior, Windows XP SP3, Windows Server 2008 (no se admite Server Core), Windows Server 2008 R2 (se admite Server Core con SP1 o posterior), Windows Server 2003 SP2

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para la ejecución de subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.
Mostrar: