ID2D1Geometry interface (d2d1.h)

Represents a geometry resource and defines a set of helper methods for manipulating and measuring geometric shapes. Interfaces that inherit from ID2D1Geometry define specific shapes.

Inheritance

The ID2D1Geometry interface inherits from ID2D1Resource. ID2D1Geometry also has these types of members:

Methods

The ID2D1Geometry interface has these methods.

 
ID2D1Geometry::CombineWithGeometry

Combines this geometry with the specified geometry and stores the result in an ID2D1SimplifiedGeometrySink. (overload 3/4)
ID2D1Geometry::CombineWithGeometry

Combines this geometry with the specified geometry and stores the result in an ID2D1SimplifiedGeometrySink. (overload 2/4)
ID2D1Geometry::CombineWithGeometry

Combines this geometry with the specified geometry and stores the result in an ID2D1SimplifiedGeometrySink. (overload 4/4)
ID2D1Geometry::CombineWithGeometry

Combines this geometry with the specified geometry and stores the result in an ID2D1SimplifiedGeometrySink. (overload 1/4)
ID2D1Geometry::CompareWithGeometry

Describes the intersection between this geometry and the specified geometry. The comparison is performed using the default flattening tolerance. (overload 1/2)
ID2D1Geometry::CompareWithGeometry

Describes the intersection between this geometry and the specified geometry. The comparison is performed using the specified flattening tolerance.
ID2D1Geometry::CompareWithGeometry

Describes the intersection between this geometry and the specified geometry. The comparison is performed using the default flattening tolerance. (overload 2/2)
ID2D1Geometry::CompareWithGeometry

Describes the intersection between this geometry and the specified geometry. The comparison is performed by using the specified flattening tolerance.
ID2D1Geometry::ComputeArea

Computes the area of the geometry after it has been transformed by the specified matrix and flattened using the default tolerance.
ID2D1Geometry::ComputeArea

Computes the area of the geometry after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 2/3)
ID2D1Geometry::ComputeArea

Computes the area of the geometry after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 3/3)
ID2D1Geometry::ComputeArea

Computes the area of the geometry after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 1/3)
ID2D1Geometry::ComputeLength

Calculates the length of the geometry as though each segment were unrolled into a line. (overload 1/4)
ID2D1Geometry::ComputeLength

Calculates the length of the geometry as though each segment were unrolled into a line. (overload 3/4)
ID2D1Geometry::ComputeLength

Calculates the length of the geometry as though each segment were unrolled into a line. (overload 2/4)
ID2D1Geometry::ComputeLength

Calculates the length of the geometry as though each segment were unrolled into a line. (overload 4/4)
ID2D1Geometry::ComputePointAtLength

Calculates the point and tangent vector at the specified distance along the geometry after it has been transformed by the specified matrix and flattened using the default tolerance. (overload 1/2)
ID2D1Geometry::ComputePointAtLength

Calculates the point and tangent vector at the specified distance along the geometry after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 2/2)
ID2D1Geometry::ComputePointAtLength

Calculates the point and tangent vector at the specified distance along the geometry after it has been transformed by the specified matrix and flattened using the default tolerance. (overload 2/2)
ID2D1Geometry::ComputePointAtLength

Calculates the point and tangent vector at the specified distance along the geometry after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 1/2)
ID2D1Geometry::FillContainsPoint

Indicates whether the area filled by the geometry would contain the specified point.
ID2D1Geometry::FillContainsPoint

Indicates whether the area filled by the geometry would contain the specified point given the specified flattening tolerance. (overload 1/2)
ID2D1Geometry::FillContainsPoint

Indicates whether the area filled by this geometry would contain the specified point.
ID2D1Geometry::FillContainsPoint

Indicates whether the area filled by the geometry would contain the specified point given the specified flattening tolerance. (overload 2/2)
ID2D1Geometry::GetBounds

Retrieves the bounds of the geometry. (overload 2/2)
ID2D1Geometry::GetBounds

Retrieves the bounds of the geometry. (overload 1/2)
ID2D1Geometry::GetWidenedBounds

Gets the bounds of the geometry after it has been widened by the specified stroke width and style and transformed by the specified matrix. (overload 4/4)
ID2D1Geometry::GetWidenedBounds

Gets the bounds of the geometry after it has been widened by the specified stroke width and style and transformed by the specified matrix. (overload 3/4)
ID2D1Geometry::GetWidenedBounds

Gets the bounds of the geometry after it has been widened by the specified stroke width and style and transformed by the specified matrix. (overload 1/4)
ID2D1Geometry::GetWidenedBounds

Gets the bounds of the geometry after it has been widened by the specified stroke width and style and transformed by the specified matrix. (overload 2/4)
ID2D1Geometry::Outline

Computes the outline of the geometry and writes the result to an ID2D1SimplifiedGeometrySink. (overload 3/4)
ID2D1Geometry::Outline

Computes the outline of the geometry and writes the result to an ID2D1SimplifiedGeometrySink. (overload 2/4)
ID2D1Geometry::Outline

Computes the outline of the geometry and writes the result to an ID2D1SimplifiedGeometrySink. (overload 1/4)
ID2D1Geometry::Outline

Computes the outline of the geometry and writes the result to an ID2D1SimplifiedGeometrySink. (overload 4/4)
ID2D1Geometry::Simplify

Creates a simplified version of the geometry that contains only lines and (optionally) cubic Bezier curves and writes the result to an ID2D1SimplifiedGeometrySink. (overload 4/4)
ID2D1Geometry::Simplify

Creates a simplified version of the geometry that contains only lines and (optionally) cubic Bezier curves and writes the result to an ID2D1SimplifiedGeometrySink. (overload 1/4)
ID2D1Geometry::Simplify

Creates a simplified version of the geometry that contains only lines and (optionally) cubic Bezier curves and writes the result to an ID2D1SimplifiedGeometrySink. (overload 2/4)
ID2D1Geometry::Simplify

Creates a simplified version of the geometry that contains only lines and (optionally) cubic Bezier curves and writes the result to an ID2D1SimplifiedGeometrySink. (overload 3/4)
ID2D1Geometry::StrokeContainsPoint

Determines whether the geometry's stroke contains the specified point given the specified stroke thickness, style, and transform. (overload 4/4)
ID2D1Geometry::StrokeContainsPoint

Determines whether the geometry's stroke contains the specified point given the specified stroke thickness, style, and transform. (overload 2/4)
ID2D1Geometry::StrokeContainsPoint

Determines whether the geometry's stroke contains the specified point given the specified stroke thickness, style, and transform. (overload 1/4)
ID2D1Geometry::StrokeContainsPoint

Determines whether the geometry's stroke contains the specified point given the specified stroke thickness, style, and transform. (overload 3/4)
ID2D1Geometry::Tessellate

Creates a set of clockwise-wound triangles that cover the geometry after it has been transformed using the specified matrix and flattened using the specified tolerance. (overload 1/2)
ID2D1Geometry::Tessellate

Creates a set of clockwise-wound triangles that cover the geometry after it has been transformed using the specified matrix and flattened using the default tolerance. (overload 2/2)
ID2D1Geometry::Tessellate

Creates a set of clockwise-wound triangles that cover the geometry after it has been transformed using the specified matrix and flattened using the specified tolerance. (overload 2/2)
ID2D1Geometry::Tessellate

Creates a set of clockwise-wound triangles that cover the geometry after it has been transformed using the specified matrix and flattened using the default tolerance. (overload 1/2)
ID2D1Geometry::Widen

Widens the geometry by the specified stroke and writes the result to an ID2D1SimplifiedGeometrySink after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 1/2)
ID2D1Geometry::Widen

Widens the geometry by the specified stroke and writes the result to an ID2D1SimplifiedGeometrySink after it has been transformed by the specified matrix and flattened using the default tolerance. (overload 2/2)
ID2D1Geometry::Widen

Widens the geometry by the specified stroke and writes the result to an ID2D1SimplifiedGeometrySink after it has been transformed by the specified matrix and flattened using the specified tolerance. (overload 2/2)
ID2D1Geometry::Widen

Widens the geometry by the specified stroke and writes the result to an ID2D1SimplifiedGeometrySink after it has been transformed by the specified matrix and flattened using the default tolerance. (overload 1/2)

Remarks

There are several types of Direct2D geometry objects: a simple geometry (ID2D1RectangleGeometry, ID2D1RoundedRectangleGeometry, or ID2D1EllipseGeometry), a path geometry (ID2D1PathGeometry), or a composite geometry (ID2D1GeometryGroup and ID2D1TransformedGeometry).

Direct2D geometries enable you to describe two-dimensional figures and also offer many uses, such as defining hit-test regions, clip regions, and even animation paths.

Direct2D geometries are immutable and device-independent resources created by ID2D1Factory. In general, you should create geometries once and retain them for the life of the application, or until they need to be modified. For more information about device-independent and device-dependent resources, see the Resources Overview.

Requirements

Requirement Value
Minimum supported client Windows 7, Windows Vista with SP2 and Platform Update for Windows Vista [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 R2, Windows Server 2008 with SP2 and Platform Update for Windows Server 2008 [desktop apps | UWP apps]
Target Platform Windows
Header d2d1.h

See also

Geometry Overview

ID2D1Resource