2 // System.Drawing.Drawing2D.Blend.cs
\r
5 // Dennis Hayes (dennish@Raytek.com)
\r
7 // (C) 2002/3 Ximian, Inc
\r
11 namespace System.Drawing.Drawing2D
\r
14 /// Summary description for Blend.
\r
16 public sealed class Blend
\r
19 private float [] positions;
\r
20 private float [] factors;
\r
21 public Blend(int count) {
\r
24 throw new ArgumentOutOfRangeException("Count", count, "Must be at least 2");
\r
27 //FIXME: call Blend!
\r
29 positions = new float [1];
\r
30 factors = new float [1];
\r
31 positions[0] = 0.0F;
\r
32 positions[1] = 1.0F;
\r
37 for(i = 0; i < count; i++){
\r
38 positions[i] = (1.0F/count) * i;
\r
39 factors[i] = (1.0F/count) * i;
\r
41 //fix any rounding errors that would generate an invald list.
\r
42 positions[0] = 0.0F;
\r
43 positions[1] = 1.0F;
\r
50 positions = new float [1];
\r
51 factors = new float [1];
\r
52 positions[0] = 0.0F;
\r
53 positions[1] = 1.0F;
\r
57 public float [] Factors{
\r
62 count = value.GetUpperBound(0) + 1;
\r
63 if((value[0] !=0) | (value[count-1] != 1.0F)){
\r
64 throw new ArgumentException(" First value must be 0.0, last value must be 1.0","Factors");
\r
69 public float [] Positions{
\r
74 count = value.GetUpperBound(0) + 1;
\r
75 if((value[0] !=0) | (value[count-1] != 1.0F)){
\r
76 throw new ArgumentException(" First value must be 0.0, last value must be 1.0","Positon");
\r