Win32 API:ID2D1TransformedGeometry 接口(D2d1.h)
ID2D1TransformedGeometry 接口是与 Direct2D 图形库相关的接口之一,用于表示一个几何图元在进行某种变换之后的结果。以下是该接口的基本信息:ID2D1TransformedGeometry 接口概述:ID2D1TransformedGeometry 接口是 Direct2D 中用于表示经过变换的几何图元的接口。通过这个接口,你可以创建一个几何图元,并应用一个变换矩阵,以便在绘制时呈现经过变换后的图形。头文件:#include <d2d1.h>基本结构:struct ID2D1TransformedGeometry : public ID2D1Geometry常用方法:1. GetSourceGeometry(ID2D1Geometry **sourceGeometry): - 描述:获取原始几何图元。 - 参数:sourceGeometry - 用于存储原始几何图元的指针。2. GetTransform(D2D1_MATRIX_3X2_F *transform): - 描述:获取应用于几何图元的变换矩阵。 - 参数:transf...
Win32 API:ID2D1TessellationSink 接口(D2d1.h)
ID2D1TessellationSink 接口是与 Direct2D 图形库相关的接口之一,用于表示一个图形图元(如路径)的填充轮廓。以下是该接口的基本信息:ID2D1TessellationSink 接口概述:ID2D1TessellationSink 接口是 Direct2D 中用于定义图元(通常是路径)填充轮廓的接口。通过这个接口,你可以将路径的轮廓信息传递给 Direct2D 来进行填充操作。头文件:#include <d2d1.h>基本结构:struct ID2D1TessellationSink : public IUnknown常用方法:1. AddTriangles(const D2D1_TRIANGLE *triangles, UINT32 trianglesCount): - 描述:添加三角形信息到填充轮廓。 - 参数:triangles - 一个包含三角形顶点信息的数组,trianglesCount - 数组的长度。2. Close(): - 描述:关闭填充轮廓,表示图元的轮廓信息已经全部传递。示例用法:// 创建ID2D1Tessell...
Win32 API:ID2D1StrokeStyle 接口(D2d1.h)
ID2D1StrokeStyle 接口是与Direct2D图形库相关的接口之一,用于定义绘制路径轮廓时的笔刷样式。以下是该接口的一些基本信息:ID2D1StrokeStyle 接口概述:ID2D1StrokeStyle 接口是 Direct2D 中用于定义路径轮廓绘制样式的接口。它包含了描述如何渲染路径轮廓的一系列属性和方法。头文件:#include <d2d1.h>基本结构:struct ID2D1StrokeStyle : public ID2D1Resource常用属性和方法:1. SetStartCap(D2D1_CAP_STYLE startCap): - 描述:设置路径的起始端点样式。 - 参数:startCap - 枚举类型,表示起始端点的样式。2. SetDashCap(D2D1_CAP_STYLE dashCap): - 描述:设置虚线模式下的虚线段的端点样式。 - 参数:dashCap - 枚举类型,表示虚线段的端点样式。3. SetLineStyle(D2D1_LINE_STYLE lineStyle): - 描述:设置路径的线条样...
Win32 API:ID2D1SolidColorBrush 接口(D2d1.h)
ID2D1SolidColorBrush 接口是Windows平台上Direct2D图形API中的一部分,用于表示实心颜色画刷对象。这个接口在D2d1.h头文件中声明,主要用于与Direct2D一起创建和操作实心颜色画刷。以下是ID2D1SolidColorBrush接口的一些重要成员:1. SetColor:设置画刷的颜色。 void SetColor( const D2D1_COLOR_F &color ); 这个方法用于设置画刷的颜色,传入的参数是一个 D2D1_COLOR_F 结构,表示颜色值。2. GetColor:获取画刷的颜色。 D2D1_COLOR_F GetColor() const; 这个方法用于获取当前画刷的颜色。使用ID2D1SolidColorBrush通常需要先通过ID2D1RenderTarget的CreateSolidColorBrush方法创建一个实例,然后通过该实例设置或获取颜色。以下是一个简单的使用示例:#include <d2d1.h>// 创建ID2D1SolidColorBrushID2D1So...
Win32 API:ID2D1SimplifiedGeometrySink 接口(D2d1.h)
ID2D1SimplifiedGeometrySink 接口是 Win32 API 中 Direct2D 图形库的一部分,定义了用于简化几何图形定义的方法。这个接口通常与 ID2D1GeometrySink 接口一起使用,用于接收简化后的几何图形数据。以下是 ID2D1SimplifiedGeometrySink 接口的基本定义:interface ID2D1SimplifiedGeometrySink : public IUnknown{ IFACEMETHOD_(void, SetFillMode)( D2D1_FILL_MODE fillMode ) PURE; IFACEMETHOD_(void, SetSegmentFlags)( D2D1_PATH_SEGMENT flags ) PURE; IFACEMETHOD_(void, BeginFigure)( D2D1_POINT_2F startPoint, D2D1_FIGURE_BEGIN figureBegin ...
Win32 API:ID2D1RoundedRectangleGeometry 接口(D2d1.h)
ID2D1RoundedRectangleGeometry 接口是Win32 API中的一部分,位于 D2d1.h 头文件中,主要用于 Direct2D 图形库,用于创建表示圆角矩形的几何形状。以下是该接口的一些基本信息:interface ID2D1RoundedRectangleGeometry : ID2D1Geometry{ void GetRoundedRect( D2D1_ROUNDED_RECT *roundedRect ) const;};这个接口继承自 ID2D1Geometry 接口,表示一个圆角矩形的几何形状。GetRoundedRect 方法用于获取圆角矩形的详细信息,包括位置、大小和圆角半径。D2D1_ROUNDED_RECT 结构体定义如下:typedef struct D2D1_ROUNDED_RECT{ D2D1_RECT_F rect; FLOAT radiusX; FLOAT radiusY;} D2D1_ROUNDED_RECT;它包含一个矩形 (rect) 和两个圆角的半径 (radiusX ...
Win32 API:ID2D1Resource 接口(D2d1.h)
ID2D1Resource 接口是 Direct2D 图形库中的一个基础接口,用于表示所有 Direct2D 对象的基本行为。这个接口包含一些基本的方法,例如获取和设置对象的标签(tag),以及在对象上设置调试级别信息。以下是 ID2D1Resource 接口的一些主要方法:1. GetFactory: 获取与此资源相关联的工厂对象。 void GetFactory( ID2D1Factory** factory );2. GetFactory: 设置调试级别,影响对象的调试输出。 void SetDebugLevel( D2D1_DEBUG_LEVEL debugLevel );3. GetTag: 获取与资源关联的标签。 void GetTag( UINT64* tag );4. SetTag: 设置与资源关联的标签。 void SetTag( UINT64 tag );ID2D1Resource 是其他 Direct2D 对象的基础接口,包括 ID2D1RenderTarget...
Win32 API:ID2D1RenderTarget 接口(D2d1.h)
ID2D1RenderTarget 接口是 Win32 API 中 Direct2D 图形库(Direct2D是DirectX的一部分)的一部分。这个接口用于表示一个可以被渲染的目标,你可以在上面绘制图形、文本等。以下是 ID2D1RenderTarget 接口的一些常见成员:1. BeginDraw: 开始绘制过程,返回一个错误代码。 HRESULT BeginDraw();2. Clear: 清除渲染目标上的所有内容。 void Clear(const D2D1_COLOR_F& color);3. DrawLine: 在渲染目标上绘制一条直线。 void DrawLine( D2D1_POINT_2F point0, D2D1_POINT_2F point1, ID2D1Brush* brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle* strokeStyle = NULL );4. DrawRectangle: 在渲染目标上绘制矩...
Win32 API:ID2D1RectangleGeometry 接口(D2d1.h)
ID2D1RectangleGeometry 接口是 Direct2D 中表示矩形几何图形的接口。矩形几何图形是由一个矩形区域定义的几何图形,可用于在渲染目标上绘制矩形。以下是该接口的一些基本信息:ID2D1RectangleGeometry 接口简介:ID2D1RectangleGeometry 接口是 Direct2D 中表示矩形几何图形的接口。矩形几何图形是由一个矩形区域定义的几何图形,可以通过该接口创建并在渲染目标上绘制。头文件:#include <d2d1.h>声明:interface ID2D1RectangleGeometry : public ID2D1Geometry{ STDMETHOD_(void, GetRect)( _Out_ D2D1_RECT_F *rect ) CONST PURE;};主要方法:1. GetRect: - 描述:获取矩形几何图形的矩形区域。 - 参数: - rect: 用于存储矩形区域的 D2D1_RECT_F 结构的指针。 - 返回值:无。示例用法:// 创建矩形几何图...
Win32 API:ID2D1RadialGradientBrush 接口(D2d1.h)
ID2D1RadialGradientBrush 接口是 Direct2D 中表示径向渐变画刷的接口。径向渐变画刷以两个不同的圆为基础,其中一个是渐变的起始圆,另一个是渐变的结束圆。以下是该接口的一些基本信息:ID2D1RadialGradientBrush 接口简介:ID2D1RadialGradientBrush 接口是 Direct2D 中表示径向渐变画刷的接口。径向渐变画刷以两个不同的圆为基础,其中一个是渐变的起始圆,另一个是渐变的结束圆,使渲染目标上的图形从起始圆渐变到结束圆。头文件:#include <d2d1.h>声明:interface ID2D1RadialGradientBrush : public ID2D1Brush{ STDMETHOD_(void, SetCenter)( D2D1_POINT_2F center ) PURE; STDMETHOD_(void, SetGradientOriginOffset)( D2D1_POINT_2F gradientOriginOffset ...
Win32 API:ID2D1PathGeometry 接口(D2d1.h)
ID2D1PathGeometry 接口是 Direct2D 中表示路径几何图形的接口。路径几何图形是由线段和曲线组成的路径,可用于在渲染目标上绘制各种形状。以下是该接口的一些基本信息:ID2D1PathGeometry 接口简介:ID2D1PathGeometry 接口是 Direct2D 中表示路径几何图形的接口。路径几何图形是由线段和曲线组成的路径,可以通过该接口定义并在渲染目标上绘制。头文件:#include <d2d1.h>声明:interface ID2D1PathGeometry : public ID2D1Geometry{ STDMETHOD(Open)( _Outptr_ ID2D1GeometrySink **geometrySink ) PURE; STDMETHOD(Stream)( _In_ ID2D1GeometrySink *geometrySink ) CONST PURE;};主要方法:1. Open: - 描述:打开路径几何图形以便定义其形状。 - 参数: ...
Win32 API:ID2D1Mesh 接口(D2d1.h)
ID2D1Mesh 接口是 Direct2D 中表示网格(Mesh)的接口。网格是一个由三角形组成的二维图形,它可以用于在渲染目标上绘制复杂的图形。以下是该接口的一些基本信息:ID2D1Mesh 接口简介:ID2D1Mesh 接口是 Direct2D 中表示网格的接口。网格是一个二维图形,由一组三角形组成。通过创建和定义这些三角形,可以在渲染目标上绘制复杂的图形。头文件:#include <d2d1.h>声明:interface ID2D1Mesh : public ID2D1Resource{ STDMETHOD(Open)( _Outptr_ ID2D1TessellationSink **tessellationSink ) PURE;};主要方法:1. Open: - 描述:打开网格以便填充其内容。 - 参数: - tessellationSink: 用于存储 ID2D1TessellationSink 接口的指针,用于定义网格的几何形状。 - 返回值:HRESULT。示例用法:// 创建网格ID2D1Mesh*...
Win32 API:ID2D1LinearGradientBrush 接口(D2d1.h)
ID2D1LinearGradientBrush 接口是 Direct2D 中表示线性渐变画刷的接口。它允许在渲染目标上绘制使用线性渐变填充的图形。以下是该接口的一些基本信息:ID2D1LinearGradientBrush 接口简介:ID2D1LinearGradientBrush 接口是 Direct2D 中表示线性渐变画刷的接口。线性渐变画刷使用两个端点之间的线段定义渐变的方向和颜色变化。头文件:#include <d2d1.h>声明:interface ID2D1LinearGradientBrush : public ID2D1Brush{ STDMETHOD_(void, SetStartPoint)( D2D1_POINT_2F startPoint ) PURE; STDMETHOD_(void, SetEndPoint)( D2D1_POINT_2F endPoint ) PURE; STDMETHOD_(D2D1_POINT_2F, GetStartPoint)( )...
Win32 API:ID2D1Layer 接口(D2d1.h)
ID2D1Layer 接口是 Direct2D 中表示图层的接口。图层是可以包含图形的透明平面,可用于组织和管理渲染目标上的图形元素。以下是该接口的一些基本信息:ID2D1Layer 接口简介:ID2D1Layer 接口是 Direct2D 中表示图层的接口。图层是一个透明的平面,可以包含渲染目标上的图形元素,允许以组的形式组织和管理这些元素。头文件:#include <d2d1.h>声明:interface ID2D1Layer : public ID2D1Resource{ STDMETHOD_(D2D1_SIZE_F, GetSize)( ) CONST PURE; STDMETHOD_(void, GetDpi)( _Out_ FLOAT* dpiX, _Out_ FLOAT* dpiY ) CONST PURE; STDMETHOD_(void, GetContentBounds)( _Out_ D2D1_RECT_F* contentBounds ) CONST...
Win32 API:ID2D1Image 接口(D2d1.h)
ID2D1Image 接口是 Direct2D 中表示图像的基本接口。它是其他图像类的基类,提供了一些通用的方法。以下是该接口的一些基本信息:ID2D1Image 接口简介:ID2D1Image 接口是 Direct2D 中表示图像的基本接口。它是其他图像类的基类,用于共享通用的图像处理功能。头文件:#include <d2d1.h>声明:interface ID2D1Image : public ID2D1Resource{ STDMETHOD_(D2D1_SIZE_F, GetSize)( ) CONST PURE; STDMETHOD_(D2D1_SIZE_U, GetPixelSize)( ) CONST PURE; STDMETHOD_(D2D1_PIXEL_FORMAT, GetPixelFormat)( ) CONST PURE; STDMETHOD_(void, GetDpi)( _Out_ FLOAT* dpiX, _Out_ FLOAT* dpiY ...
Win32 API:ID2D1HwndRenderTarget 接口(D2d1.h)
ID2D1HwndRenderTarget 接口是 Direct2D 中用于在 HWND 上进行图形渲染的接口。它提供了在 Windows 窗口上绘制 2D 图形的功能。以下是该接口的一些基本信息:ID2D1HwndRenderTarget 接口简介:ID2D1HwndRenderTarget 接口是 Direct2D 中用于与 Windows 窗口协同工作的渲染目标接口。通过此接口,可以在指定的 HWND 上进行图形渲染。头文件:#include <d2d1.h>声明:interface ID2D1HwndRenderTarget : public ID2D1RenderTarget{ STDMETHOD_(D2D1_WINDOW_STATE, CheckWindowState)( ) PURE; STDMETHOD(Resize)( _In_ CONST D2D1_SIZE_U *pixelSize ) PURE; STDMETHOD_(HWND, GetHwnd)( ) CONST PURE;}...
Win32 API:ID2D1GradientStopCollection 接口(D2d1.h)
ID2D1GradientStopCollection 接口是与 Direct2D 中的渐变停止集合相关的接口。在 Win32 API 中,它通常用于处理渐变效果。以下是该接口的一些基本信息:ID2D1GradientStopCollection 接口简介:ID2D1GradientStopCollection 接口是 Direct2D 中表示渐变停止集合的接口。这个接口包含一组渐变停止,这些渐变停止用于在渐变中指定颜色的变化。头文件:#include <d2d1.h>声明:interface ID2D1GradientStopCollection : public ID2D1Resource{ STDMETHOD_(UINT32, GetGradientStopCount)( ) CONST PURE; STDMETHOD_(void, GetGradientStops)( D2D1_GRADIENT_STOP * gradientStops, UINT32 gradientStopsCount ) CO...
Win32 API:ID2D1GeometrySink 接口(D2d1.h)
ID2D1GeometrySink 接口是 Direct2D 图形 API 中的一部分,用于定义和编辑几何图形。通过这个接口,你可以将几何图形描述为路径,从而在 Direct2D 中进行绘制。以下是关于 ID2D1GeometrySink 接口的一些基本信息:概述:ID2D1GeometrySink 接口允许你定义和编辑几何图形的路径。你可以通过这个接口向路径中添加线段、贝塞尔曲线、圆弧等元素,从而构建出复杂的几何形状。头文件:#include <d2d1.h>方法: SetFillMode: 设置路径的填充模式,如交叉、并集等。 SetSegmentFlags: 设置路径的线段标志,控制线段的类型。 BeginFigure: 开始一个新的子路径。 AddLine: 向路径添加直线段。 AddBezier: 向路径添加贝塞尔曲线。 AddArc: 向路径添加圆弧。 EndFigure: 结束当前子路径。 Close: 关闭几何图形路径,使其成为封闭图形。示例:#include <d2d1.h>ID2D1Factory* pD2DFactory = nullptr...
Win32 API:ID2D1GeometryGroup 接口(D2d1.h)
ID2D1GeometryGroup 接口是 Windows 图形 API 中的一部分,用于表示几何图形的组合。这个接口通常与 Direct2D 库一起使用,该库是用于在 Windows 上进行图形渲染的一种 API。以下是关于 ID2D1GeometryGroup 接口的一些基本信息:概述:ID2D1GeometryGroup 接口表示一个由其他几何图形组成的组合体。通过将多个几何图形组合成一个组合体,可以实现更复杂的形状和路径。头文件:#include <d2d1.h>方法: GetSourceGeometryCount: 获取组合中几何图形的数量。 GetSourceGeometries: 获取组合中的所有几何图形。 GetFillMode: 获取组合的填充模式(如交叉、并集等)。 GetBounds: 获取组合的边界框。 等等...示例:#include <d2d1.h>ID2D1Factory* pD2DFactory = nullptr;ID2D1RenderTarget* pRenderTarget = nullptr;ID2D1GeometryG...
Win32 API:ID2D1Geometry 接口(D2d1.h)
ID2D1Geometry 接口是 Win32 API Direct2D 中的基础几何图形接口,用于表示 2D 几何图形。这个接口是一系列用于操作和查询几何图形属性的方法的集合。以下是一些 ID2D1Geometry 接口的方法:1. GetBounds: - 获取几何图形的边界框。 HRESULT GetBounds( const D2D1_MATRIX_3X2_F* worldTransform, D2D1_RECT_F* bounds ) const;2. GetWidenedBounds: - 获取几何图形的扩展边界。 HRESULT GetWidenedBounds( FLOAT strokeWidth, ID2D1StrokeStyle* strokeStyle, const D2D1_MATRIX_3X2_F* worldTransform, FLOAT flattenTolerance, D2D1_RECT_F* bounds ) con...