예제 #1
0
파일: FirePalette.cs 프로젝트: stewmc/vixen
		private static void InitPalette()
		{
			HSV hsv = new HSV();
			Color color;

			Palette.Clear();
			int i;
			// calc 100 reds, black to bright red
			hsv.H = 0.0f;
			hsv.S = 1.0f;
			for (i = 0; i < 100; i++)
			{
				hsv.V = i / 100.0f;
				color = hsv.ToRGB().ToArgb();
				Palette.Add(color);

			}

			// gives 100 hues red to yellow
			hsv.V = 1.0f;
			for (i = 0; i < 100; i++)
			{
				color = hsv.ToRGB().ToArgb();
				Palette.Add(color);
				hsv.H += 0.00166666f;
			}
		}
예제 #2
0
 // 0,0 is lower left
 public void SetPixel(int x, int y, HSV hsv)
 {
     Color color = hsv.ToRGB().ToArgb();
     SetPixel(x, y, color);
 }
예제 #3
0
 /// <summary>
 /// Add a frame and set the pixel to the given color. This cannot be used to update a pixel that 
 /// has already been set. See update functions.
 /// </summary>
 /// <param name="x"></param>
 /// <param name="y"></param>
 /// <param name="hsv"></param>
 public void SetPixel(int x, int y, HSV hsv)
 {
     var color = hsv.ToRGB();
     SetPixel(x, y, color);
 }
예제 #4
0
 /// <summary>
 /// Update a existing pixel in the specified frame. The pixel must exist from either the InitializeNextFrame
 /// or the SetPixel methods or an exception will occur.
 /// </summary>
 /// <param name="frame"></param>
 /// <param name="x"></param>
 /// <param name="y"></param>
 /// <param name="hsv"></param>
 public void UpdatePixel(int frame, int x, int y, HSV hsv)
 {
     var color = hsv.ToRGB();
     UpdatePixel(frame, x, y, color);
 }
예제 #5
0
파일: PinWheel.cs 프로젝트: jaredb7/vixen
 protected override void SetupRender()
 {
     if (ColorType == PinWheelColorType.Random)
     {
         HSV temphsv = new HSV();
         _newColors = new List<ColorGradient>();
         for (int newColr = 0; newColr < Arms; newColr++)
         {
             temphsv.H = Rand();
             temphsv.S = 1.0f;
             temphsv.V = 1.0f;
             _newColors.Add(new ColorGradient(temphsv.ToRGB()));
         }
     }
 }