Metode PathGradientBrush::SetInterpolationColors (gdipluspath.h)

Metode PathGradientBrush::SetInterpolationColors mengatur warna preset dan posisi campuran kuas gradien jalur ini.

Sintaks

Status SetInterpolationColors(
  [in] const Color *presetColors,
  [in] const REAL  *blendPositions,
  [in] INT         count
);

Parameter

[in] presetColors

Jenis: Const Color*

Penunjuk ke array objek Warna yang menentukan warna interpolasi untuk gradien. Warna indeks tertentu dalam array presetColors sesuai dengan posisi campuran indeks yang sama dalam array blendPositions .

[in] blendPositions

Jenis: REAL*

Penunjuk ke array yang menentukan posisi campuran. Setiap posisi campuran adalah angka dari 0 hingga 1, di mana 0 menunjukkan batas gradien dan 1 menunjukkan titik tengah. Posisi campuran antara 0 dan 1 menentukan kumpulan semua titik yang merupakan pecahan jarak tertentu dari batas ke titik tengah. Misalnya, posisi campuran 0,7 menentukan kumpulan semua titik yang 70 persen dari batas ke titik tengah.

[in] count

Jenis: INT

Bilangan bulat yang menentukan jumlah objek Warna dalam array presetColors . Ini sama dengan jumlah elemen dalam array blendPositions .

Nilai kembali

Jenis: Status

Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .

Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .

Keterangan

Sikat gradien jalur sederhana memiliki dua warna: warna batas dan warna tengah. Ketika Anda melukis dengan kuas seperti itu, warna berubah secara bertahap dari warna batas ke warna tengah saat Anda berpindah dari jalur batas ke titik tengah. Anda dapat membuat gradien yang lebih kompleks dengan menentukan array warna preset dan array posisi campuran.

Contoh

Contoh berikut membuat objek PathGradientBrush berdasarkan jalur segitiga. Metode PathGradientBrush::SetInterpolationColors mengatur warna preset kuas menjadi merah, biru, dan aqua dan mengatur posisi campuran ke 0, 0, 4, dan 1. Metode Graphics::FillRectangle menggunakan kuas gradien jalur untuk melukis persegi panjang yang berisi jalur segitiga.

VOID Example_SetInterpColors(HDC hdc)
{
   Graphics graphics(hdc);

   Point points[] = {Point(100, 0), Point(200, 200), Point(0, 200)};
   PathGradientBrush pthGrBrush(points, 3);

   Color col[] = {
      Color(255, 255, 0, 0),     // red
      Color(255, 0, 0, 255),     // blue
      Color(255, 0, 255, 255)};  // aqua

   REAL pos[] = {
      0.0f,    // red at the boundary
      0.4f,    // blue 40 percent of the way from the boundary to the center
      1.0f};   // aqua at the center

   pthGrBrush.SetInterpolationColors(col, pos, 3);
   graphics.FillRectangle(&pthGrBrush, 0, 0, 300, 300);  
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP, Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header gdipluspath.h (termasuk Gdiplus.h)
Pustaka Gdiplus.lib
DLL Gdiplus.dll

Lihat juga

Kuas dan Bentuk Terisi

Warna

Membuat Gradien Jalur

Mengisi Bentuk dengan Gradien Warna

PathGradientBrush

PathGradientBrush::GetInterpolationColors