struktur D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES (d2d1.h)

Berisi offset asal gradien dan ukuran dan posisi elips gradien untuk ID2D1RadialGradientBrush.

Sintaks

typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES {
  D2D1_POINT_2F center;
  D2D1_POINT_2F gradientOriginOffset;
  FLOAT         radiusX;
  FLOAT         radiusY;
} D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;

Anggota

center

Jenis: D2D1_POINT_2F

Di ruang koordinat kuas, bagian tengah elips gradien.

gradientOriginOffset

Jenis: D2D1_POINT_2F

Di ruang koordinat sikat, offset asal gradien relatif terhadap pusat elips gradien.

radiusX

Jenis: FLOAT

Di ruang koordinat kuas, radius x elips gradien.

radiusY

Jenis: FLOAT

Di ruang koordinat kuas, radius y elips gradien.

Keterangan

Nilai yang berbeda untuk pusat, gradienOriginOffset, radiusX dan/atau radiusY menghasilkan gradien yang berbeda. Ilustrasi berikut menunjukkan beberapa gradien radial yang memiliki offset asal gradien yang berbeda, menciptakan tampilan cahaya yang menerangi lingkaran dari sudut yang berbeda.

Ilustrasi empat lingkaran dengan gradien radial yang memiliki offset asal yang berbeda

Untuk kenyamanan, Direct2D menyediakan fungsi D2D1::RadialGradientBrushProperties untuk membuat struktur D2D1_RADIAL_GRADIENT_BRUSH baru.

Contoh

Contoh berikut memanggil CreateRadialGradientBrush untuk membuat ID2D1RadialGradientBrush. Ini menggunakan fungsi pembantu D2D1::RadialGradientBrushProperties untuk membuat struktur D2D1_RADIAL_GRADIENT_BRUSH yang memiliki nilai tengah (75, 5), gradienOriginOffset (0, 0), dan radiusX dan radiusY hingga 75 dan meneruskan struktur ke metode CreateRadialGradientBrush . Ketika sikat gradien digunakan untuk mengisi persegi panjang, ia menghasilkan output seperti yang ditunjukkan dalam ilustrasi berikut.

Ilustrasi lingkaran dengan sikat gradien radial
// The center of the gradient is in the center of the box.
// The gradient origin offset was set to zero(0, 0) or center in this case.
if (SUCCEEDED(hr))
{
    hr = m_pRenderTarget->CreateRadialGradientBrush(
        D2D1::RadialGradientBrushProperties(
            D2D1::Point2F(75, 75),
            D2D1::Point2F(0, 0),
            75,
            75),
        pGradientStops,
        &m_pRadialGradientBrush
        );
}

Untuk informasi selengkapnya tentang kuas gradien radial, lihat topik Cara Membuat Sikat Gradien Radial dan Gambaran Umum Brush.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7, Windows Vista dengan SP2 dan Pembaruan Platform untuk Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2, Windows Server 2008 dengan SP2 dan Pembaruan Platform untuk Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Header d2d1.h

Lihat juga

Gambaran Umum Brush

D2D1::RadialGradientBrushProperties

Cara Membuat Sikat Gradien Radial

ID2D1RadialGradientBrush