/// <summary> /// Draw filled primitive onto surface /// </summary> /// <param name="surface">Surface to draw to</param> /// <param name="color">Color to fill primitive</param> /// <param name="antiAlias">antialias primitive</param> /// <param name="fill">fill primitive with color</param> public void Draw(Surface surface, System.Drawing.Color color, bool antiAlias, bool fill) { if (surface == null) { throw new ArgumentNullException("surface"); } if (fill) { int result = SdlGfx.filledPieRGBA(surface.Handle, this.PositionX, this.PositionY, this.Radius, this.StartingAngle, this.EndingAngle, color.R, color.G, color.B, color.A); GC.KeepAlive(this); if (result != (int)SdlFlag.Success) { throw SdlException.Generate(); } } else { int result = SdlGfx.pieRGBA( surface.Handle, this.PositionX, this.PositionY, this.Radius, this.StartingAngle, this.EndingAngle, color.R, color.G, color.B, color.A); GC.KeepAlive(this); if (result != (int)SdlFlag.Success) { throw SdlException.Generate(); } } }
public void PieRGBA() { this.InitSdl(); //Random rand = new Random(); int result = SdlGfx.pieRGBA(surfacePtr, 200, 100, 100, 50, 100, 200, 0, (byte)0, 254); result = Sdl.SDL_Flip(surfacePtr); Thread.Sleep(sleepTime); Assert.AreEqual(result, 0); this.Quit(); }