www.doronamir.com

E-mail: doron@doronamir.com

 

 

 

 GDI+: PathGradientBrush

ביישום זה נבצע צביעה בטיפוס מסוג PathGradientBrush המאפשר לבצע צביעה בשיפוע

תחילה יש להגדיר אובייקט מטיפוס GraphicsPath המאפשר לבנות את נתיב המילוי כלומר מעגל , ריבוע וכו' אנו משתמשים באובייקט Rectangle

ובשלב הבא יש לבנות מברשת משופעת (ה- Constructor מקבל את  אובייקט הנתיב) , למברשת מסוג זה קיים מאפיין

עבור צבע השיפוע עצמו CenterColor (בדוגמה הנ"ל הוא בצבע אדום) , קיים מאפיין נוסף עבור צבע מעטפת השיפוע SurroundColors

מאפיין זה מקבל אליו מערך צבעים מסוג Color במקרה זה המערך מכיל צבע אחד – שחור .

 

 

  

 

 

using System;

using System.Drawing;

using System.Drawing.Drawing2D;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

 

namespace DoronAmirGDI_101

{

 

private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)

                        {

                                    //הכנת מצביע מסוג משטח ציור והצבעה אליו

                                    Graphics DrawArea = e.Graphics;

                                    // הגדרת מברשת משופעת

                                    PathGradientBrush MyBrush;

                                    //אובייקט עבור נתיב המילוי

                                    GraphicsPath graphPath = new GraphicsPath();

                                    // אובייקט מלבן עבור צורת המילוי

                                    Rectangle rectSquare = new Rectangle(0, 0, ClientSize.Width, ClientSize.Height);

                                    //נתיב המילוי

                                    graphPath.AddRectangle(rectSquare);

                                   

                                    MyBrush = new PathGradientBrush(graphPath);

                                    //בחירת צבע השיפוע - לב השיפוע

                                    MyBrush.CenterColor = Color.Red;

                                    // אתחול מערך הצבעים שמיועד לעטיפת השיפוע

                                    Color[] surroundColor = new Color[]{Color.Black};

                                    //טעינת מערך הצבעים עבור עטיפת השיפוע

                                    MyBrush.SurroundColors = surroundColor;

                                    //ציור על המשטח 

                                    DrawArea.FillPath(MyBrush, graphPath);

                        }

}