Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Geometry Class
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Provides a base class for objects that define geometric shapes. Geometry objects can be used for clipping regions and as geometry definitions for rendering two-dimensional graphic data as a Path.
Inheritance Hierarchy
System.Object
System.Windows.DependencyObject
System.Windows.Media.Geometry
System.Windows.Media.EllipseGeometry
System.Windows.Media.GeometryGroup
System.Windows.Media.LineGeometry
System.Windows.Media.PathGeometry
System.Windows.Media.RectangleGeometry
Namespace: System.Windows.Media
Assembly: System.Windows (in System.Windows.dll)
Syntax
'Declaration
Public MustInherit Class Geometry _
Inherits DependencyObject
public abstract class Geometry : DependencyObject
The Geometry type exposes the following members.
Properties
| Name | Description | |
|---|---|---|
| Public propertySupported by Silverlight for Windows Phone | Bounds | Gets a Rect that specifies the axis-aligned bounding box of the Geometry. |
| Public propertySupported by Silverlight for Windows Phone | Dispatcher | Gets the Dispatcher this object is associated with. (Inherited from DependencyObject.) |
| Public propertyStatic memberSupported by Silverlight for Windows Phone | Empty | Gets an empty geometry object. |
| Public propertyStatic memberSupported by Silverlight for Windows Phone | StandardFlatteningTolerance | Gets the standard tolerance used for polygonal approximation. |
| Public propertySupported by Silverlight for Windows Phone | Transform | Gets or sets the Transform object applied to a Geometry. |
Top
Methods
| Name | Description | |
|---|---|---|
| Public methodSupported by Silverlight for Windows Phone | CheckAccess | Determines whether the calling thread has access to this object. (Inherited from DependencyObject.) |
| Public methodSupported by Silverlight for Windows Phone | ClearValue | Clears the local value of a dependency property. (Inherited from DependencyObject.) |
| Public methodSupported by Silverlight for Windows Phone | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
| Protected methodSupported by Silverlight for Windows Phone | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
| Public methodSupported by Silverlight for Windows Phone | GetAnimationBaseValue | Returns any base value established for a Silverlight dependency property, which would apply in cases where an animation is not active. (Inherited from DependencyObject.) |
| Public methodSupported by Silverlight for Windows Phone | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
| Public methodSupported by Silverlight for Windows Phone | GetType | Gets the Type of the current instance. (Inherited from Object.) |
| Public methodSupported by Silverlight for Windows Phone | GetValue | Returns the current effective value of a dependency property from a DependencyObject. (Inherited from DependencyObject.) |
| Protected methodSupported by Silverlight for Windows Phone | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
| Public methodSupported by Silverlight for Windows Phone | ReadLocalValue | Returns the local value of a dependency property, if a local value is set. (Inherited from DependencyObject.) |
| Public methodSupported by Silverlight for Windows Phone | SetValue | Sets the local value of a dependency property on a DependencyObject. (Inherited from DependencyObject.) |
| Public methodSupported by Silverlight for Windows Phone | ToString | Returns a string that represents the current object. (Inherited from Object.) |
Top
Fields
| Name | Description | |
|---|---|---|
| Public fieldStatic memberSupported by Silverlight for Windows Phone | TransformProperty | Identifies the Transform dependency property. |
Top
Remarks
For XAML syntaxes that take a Geometry, you need to specify a nonabstract derived type of Geometry as an object element. For details, see the XAML syntax on the reference pages for EllipseGeometry, GeometryGroup, LineGeometry, PathGeometry, or RectangleGeometry.
Geometries can be conceptualized as being "simple" or "complex" geometries. EllipseGeometry, LineGeometry, and RectangleGeometry are the simple geometries, which specify the geometrical shape as one element with basic coordinate or dimension properties. GeometryGroup and PathGeometry are the complex geometries. GeometryGroup combines other geometries that it holds as child objects. PathGeometry uses either a set of nested figure/segment path definition elements or a compact string syntax to describe a path for the geometry. For more information, see Geometries or Path Markup Syntax.
A Geometry does not entirely define its own rendering. Instead, a Geometry is provided as data for a Path. Path in turn is a UIElement and therefore participates in the Silverlight 2 rendering system.
Geometry Compared to Shape
The System.Windows.Shapes.Shape class has a Fill, Stroke, and other rendering properties that Geometry and its derived classes lack. The 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.
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.
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.