<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2F2D_Graphics%2FPathGradientBrush</id>
		<title>Csharp/C Sharp/2D Graphics/PathGradientBrush - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=Csharp%2FC_Sharp%2F2D_Graphics%2FPathGradientBrush"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/2D_Graphics/PathGradientBrush&amp;action=history"/>
		<updated>2026-04-29T16:42:28Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/2D_Graphics/PathGradientBrush&amp;diff=784&amp;oldid=prev</id>
		<title> в 15:31, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/2D_Graphics/PathGradientBrush&amp;diff=784&amp;oldid=prev"/>
				<updated>2010-05-26T15:31:19Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:31, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=Csharp/C_Sharp/2D_Graphics/PathGradientBrush&amp;diff=785&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=Csharp/C_Sharp/2D_Graphics/PathGradientBrush&amp;diff=785&amp;oldid=prev"/>
				<updated>2010-05-26T11:39:57Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==CenterColor==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ruponentModel;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
public class Form1 : Form {&lt;br /&gt;
    protected override void OnPaint(PaintEventArgs e) {&lt;br /&gt;
        Graphics g = e.Graphics;&lt;br /&gt;
        GraphicsPath gp = new GraphicsPath();&lt;br /&gt;
        gp.AddLine(10, 10, 110, 15);&lt;br /&gt;
        gp.AddLine(110, 15, 100, 96);&lt;br /&gt;
        gp.AddLine(100, 96, 15, 110);&lt;br /&gt;
        gp.CloseFigure();&lt;br /&gt;
        g.FillRectangle(Brushes.White, this.ClientRectangle);&lt;br /&gt;
        g.SmoothingMode = SmoothingMode.AntiAlias;&lt;br /&gt;
        PathGradientBrush pgb = new PathGradientBrush(gp);&lt;br /&gt;
        pgb.CenterColor = Color.White;&lt;br /&gt;
        pgb.SurroundColors = new Color[] { Color.Blue };&lt;br /&gt;
        g.FillPath(pgb, gp);&lt;br /&gt;
        g.DrawPath(Pens.Black, gp);&lt;br /&gt;
        pgb.Dispose();&lt;br /&gt;
        gp.Dispose();&lt;br /&gt;
    }&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        Application.Run(new Form1());&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Gradient Brush Ball==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
class BouncingGradientBrushBall : Form {&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        Application.Run(new BouncingGradientBrushBall());&lt;br /&gt;
    }&lt;br /&gt;
    public BouncingGradientBrushBall() {&lt;br /&gt;
        ResizeRedraw = true;&lt;br /&gt;
    }&lt;br /&gt;
    protected override void OnPaint(PaintEventArgs pea) {&lt;br /&gt;
        GraphicsPath path = new GraphicsPath();&lt;br /&gt;
        Rectangle rect = new Rectangle(10, 10, 30, 30);&lt;br /&gt;
        path.AddEllipse(rect);&lt;br /&gt;
        PathGradientBrush pgbrush = new PathGradientBrush(path);&lt;br /&gt;
        pgbrush.CenterPoint = new PointF((rect.Left + rect.Right) / 3,&lt;br /&gt;
                                         (rect.Top + rect.Bottom) / 3);&lt;br /&gt;
        pgbrush.CenterColor = Color.White;&lt;br /&gt;
        pgbrush.SurroundColors = new Color[] { Color.Red };&lt;br /&gt;
        pea.Graphics.FillRectangle(pgbrush, rect);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Square Tile==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class SquareTile: Form&lt;br /&gt;
{&lt;br /&gt;
     const int iSide = 50;         // Side of square&lt;br /&gt;
   &lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new SquareTile());&lt;br /&gt;
     }&lt;br /&gt;
     public SquareTile()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true; &lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);&lt;br /&gt;
     }      &lt;br /&gt;
     protected void DoPage(Graphics grfx, Color clr, int cx, int cy)&lt;br /&gt;
     {&lt;br /&gt;
          Point[] apt = {new Point(0,     0),     new Point(iSide, 0), &lt;br /&gt;
                         new Point(iSide, iSide), new Point(0,     iSide)};&lt;br /&gt;
   &lt;br /&gt;
          PathGradientBrush pgbrush =&lt;br /&gt;
                         new PathGradientBrush(apt, WrapMode.TileFlipXY);&lt;br /&gt;
   &lt;br /&gt;
          pgbrush.SurroundColors = new Color[] { Color.Red,  Color.Lime,&lt;br /&gt;
                                                 Color.Blue, Color.White};&lt;br /&gt;
   &lt;br /&gt;
          grfx.FillRectangle(pgbrush, 0, 0, cx, cy);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Star Gradient Brush==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class StarGradientBrush: Form&lt;br /&gt;
{&lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new StarGradientBrush());&lt;br /&gt;
     }&lt;br /&gt;
     public StarGradientBrush()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true; &lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);&lt;br /&gt;
     }       &lt;br /&gt;
     protected void DoPage(Graphics grfx, Color clr, int cx, int cy)&lt;br /&gt;
     {&lt;br /&gt;
          Point[] apt = new Point[5];&lt;br /&gt;
          &lt;br /&gt;
          for (int i = 0; i &amp;lt; apt.Length; i++)&lt;br /&gt;
          {&lt;br /&gt;
               double dAngle = (i * 0.8 - 0.5) * Math.PI;&lt;br /&gt;
               apt[i] = new Point(&lt;br /&gt;
                         (int)(cx * (0.50 + 0.48 * Math.Cos(dAngle))),&lt;br /&gt;
                         (int)(cy * (0.50 + 0.48 * Math.Sin(dAngle))));&lt;br /&gt;
          }&lt;br /&gt;
          PathGradientBrush pgbrush = new PathGradientBrush(apt);&lt;br /&gt;
   &lt;br /&gt;
          pgbrush.CenterColor = Color.White;&lt;br /&gt;
          pgbrush.SurroundColors = new Color[1] { Color.Black };&lt;br /&gt;
   &lt;br /&gt;
          grfx.FillRectangle(pgbrush, 0, 0, cx, cy);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Triangle Gradient Brush==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class TriangleGradientBrush: Form&lt;br /&gt;
{&lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new TriangleGradientBrush());&lt;br /&gt;
     }&lt;br /&gt;
     public TriangleGradientBrush()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true;&lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);&lt;br /&gt;
     }       &lt;br /&gt;
     protected void DoPage(Graphics grfx, Color clr, int cx, int cy)&lt;br /&gt;
     {&lt;br /&gt;
          Point[] apt  = { new Point(cx,  0),&lt;br /&gt;
                           new Point(cx, cy),&lt;br /&gt;
                           new Point(0,  cy) };&lt;br /&gt;
   &lt;br /&gt;
          PathGradientBrush pgbrush = new PathGradientBrush(apt);&lt;br /&gt;
   &lt;br /&gt;
          grfx.FillRectangle(pgbrush, 0, 0, cx, cy);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Triangle Tile==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
   &lt;br /&gt;
class TriangleTile: Form&lt;br /&gt;
{&lt;br /&gt;
     const int iSide = 50;         // Side of square for triangle&lt;br /&gt;
     MenuItem  miChecked;&lt;br /&gt;
   &lt;br /&gt;
     public static void Main()&lt;br /&gt;
     {&lt;br /&gt;
          Application.Run(new TriangleTile());&lt;br /&gt;
     }&lt;br /&gt;
     public TriangleTile()&lt;br /&gt;
     {&lt;br /&gt;
          ResizeRedraw = true; &lt;br /&gt;
   &lt;br /&gt;
          Menu = new MainMenu();&lt;br /&gt;
          Menu.MenuItems.Add(&amp;quot;&amp;amp;Wrap-Mode&amp;quot;);&lt;br /&gt;
   &lt;br /&gt;
          foreach (WrapMode wm in Enum.GetValues(typeof(WrapMode)))&lt;br /&gt;
          {&lt;br /&gt;
               MenuItem mi = new MenuItem();&lt;br /&gt;
               mi.Text     = wm.ToString(); &lt;br /&gt;
               mi.Click   += new EventHandler(MenuWrapModeOnClick);&lt;br /&gt;
               Menu.MenuItems[0].MenuItems.Add(mi);&lt;br /&gt;
          }&lt;br /&gt;
          miChecked = Menu.MenuItems[0].MenuItems[0];&lt;br /&gt;
          miChecked.Checked = true;&lt;br /&gt;
     }&lt;br /&gt;
     void MenuWrapModeOnClick(object obj, EventArgs ea)&lt;br /&gt;
     {&lt;br /&gt;
          miChecked.Checked = false;&lt;br /&gt;
          miChecked = (MenuItem) obj;&lt;br /&gt;
          miChecked.Checked = true;&lt;br /&gt;
          Invalidate();&lt;br /&gt;
     }&lt;br /&gt;
     protected override void OnPaint(PaintEventArgs pea)&lt;br /&gt;
     {&lt;br /&gt;
          DoPage(pea.Graphics, ForeColor,ClientSize.Width, ClientSize.Height);&lt;br /&gt;
     }        &lt;br /&gt;
     protected void DoPage(Graphics grfx, Color clr, int cx, int cy)&lt;br /&gt;
     {&lt;br /&gt;
          Point[] apt = { new Point(0,     0), &lt;br /&gt;
                          new Point(iSide, 0), &lt;br /&gt;
                          new Point(0,     iSide)};&lt;br /&gt;
   &lt;br /&gt;
          PathGradientBrush pgbrush = &lt;br /&gt;
                    new PathGradientBrush(apt, (WrapMode) miChecked.Index);&lt;br /&gt;
   &lt;br /&gt;
          grfx.FillRectangle(pgbrush, 0, 0, cx, cy);&lt;br /&gt;
     }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Two-Triangle Tile==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt; &lt;br /&gt;
using System;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Drawing.Drawing2D;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
class TwoTriangleTile : Form {&lt;br /&gt;
    const int iSide = 50;         // Side of square for triangle&lt;br /&gt;
    public static void Main() {&lt;br /&gt;
        Application.Run(new TwoTriangleTile());&lt;br /&gt;
    }&lt;br /&gt;
    public TwoTriangleTile() {&lt;br /&gt;
        ResizeRedraw = true;&lt;br /&gt;
    }&lt;br /&gt;
    protected override void OnPaint(PaintEventArgs pea) {&lt;br /&gt;
        DoPage(pea.Graphics, ForeColor, ClientSize.Width, ClientSize.Height);&lt;br /&gt;
    }&lt;br /&gt;
    protected void DoPage(Graphics grfx, Color clr, int cx, int cy) {&lt;br /&gt;
        Point[] apt = { new Point(0, 0), new Point(iSide, 0), new Point(0, iSide) };&lt;br /&gt;
        PathGradientBrush pgbrush1 =&lt;br /&gt;
                       new PathGradientBrush(apt, WrapMode.TileFlipXY);&lt;br /&gt;
        apt = new Point[] {new Point(iSide, 0), new Point(iSide, iSide), &lt;br /&gt;
                             new Point(0, iSide)};&lt;br /&gt;
        PathGradientBrush pgbrush2 =&lt;br /&gt;
                       new PathGradientBrush(apt, WrapMode.TileFlipXY);&lt;br /&gt;
        grfx.FillRectangle(pgbrush1, 0, 0, cx, cy);&lt;br /&gt;
        grfx.FillRectangle(pgbrush2, 0, 0, cx, cy);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>