func FillStyle(gc draw2d.GraphicContext, x, y, width, height float64) {
	sx, sy := width/232, height/220
	gc.SetLineWidth(width / 40)

	draw2dkit.Rectangle(gc, x+sx*0, y+sy*12, x+sx*232, y+sy*70)

	var wheel1, wheel2 draw2d.Path
	wheel1.ArcTo(x+sx*52, y+sy*70, sx*40, sy*40, 0, 2*math.Pi)
	wheel2.ArcTo(x+sx*180, y+sy*70, sx*40, sy*40, 0, -2*math.Pi)

	gc.SetFillRule(draw2d.FillRuleEvenOdd)
	gc.SetFillColor(color.NRGBA{0, 0xB2, 0, 0xFF})

	gc.SetStrokeColor(image.Black)
	gc.FillStroke(&wheel1, &wheel2)

	draw2dkit.Rectangle(gc, x, y+sy*140, x+sx*232, y+sy*198)
	wheel1.Clear()
	wheel1.ArcTo(x+sx*52, y+sy*198, sx*40, sy*40, 0, 2*math.Pi)
	wheel2.Clear()
	wheel2.ArcTo(x+sx*180, y+sy*198, sx*40, sy*40, 0, -2*math.Pi)

	gc.SetFillRule(draw2d.FillRuleWinding)
	gc.SetFillColor(color.NRGBA{0, 0, 0xE5, 0xFF})
	gc.FillStroke(&wheel1, &wheel2)
}
func FillStyle(gc draw2d.GraphicContext, x, y, width, height float64) {
	sx, sy := width/232, height/220
	gc.SetLineWidth(width / 40)

	draw2dkit.Rectangle(gc, x+sx*0, y+sy*12, x+sx*232, y+sy*70)

	var wheel1, wheel2 draw2d.Path
	wheel1.ArcTo(x+sx*52, y+sy*70, sx*40, sy*40, 0, 2*math.Pi)
	wheel2.ArcTo(x+sx*180, y+sy*70, sx*40, sy*40, 0, -2*math.Pi)

	gc.SetFillRule(draw2d.FillRuleEvenOdd)
	gc.SetFillColor(color.NRGBA{0, 0xB2, 0, 0xFF})

	gc.SetStrokeColor(image.Black)
	gc.FillStroke(&wheel1, &wheel2)

	draw2dkit.Rectangle(gc, x, y+sy*140, x+sx*232, y+sy*198)
	wheel1.Clear()
	wheel1.ArcTo(x+sx*52, y+sy*198, sx*40, sy*40, 0, 2*math.Pi)
	wheel2.Clear()
	wheel2.ArcTo(x+sx*180, y+sy*198, sx*40, sy*40, 0, -2*math.Pi)

	gc.SetFillRule(draw2d.FillRuleWinding)
	gc.SetFillColor(color.NRGBA{0, 0, 0xE5, 0xFF})
	gc.FillStroke(&wheel1, &wheel2)
}
func FillStyle ( gc draw2d . GraphicContext , x , y , width , height float64 ) { sx , sy := width / 232 , height / 220 gc . SetLineWidth ( width / 40 ) draw2dkit . Rectangle ( gc , x + sx * 0 , y + sy * 12 , x + sx * 232 , y + sy * 70 ) var wheel1 , wheel2 draw2d . Path wheel1 . ArcTo ( x + sx * 52 , y + sy * 70 , sx * 40 , sy * 40 , 0 , 2 * math . Pi ) wheel2 . ArcTo ( x + sx * 180 , y + sy * 70 , sx * 40 , sy * 40 , 0 , - 2 * math . Pi ) gc . SetFillRule ( draw2d . FillRuleEvenOdd ) gc . SetFillColor ( color . NRGBA { 0 , 0xB2 , 0 , 0xFF } ) gc . SetStrokeColor ( image . Black ) gc . FillStroke ( & wheel1 , & wheel2 ) draw2dkit . Rectangle ( gc , x , y + sy * 140 , x + sx * 232 , y + sy * 198 ) wheel1 . Clear ( ) wheel1 . ArcTo ( x + sx * 52 , y + sy * 198 , sx * 40 , sy * 40 , 0 , 2 * math . Pi ) wheel2 . Clear ( ) wheel2 . ArcTo ( x + sx * 180 , y + sy * 198 , sx * 40 , sy * 40 , 0 , - 2 * math . Pi ) gc . SetFillRule ( draw2d . FillRuleWinding ) gc . SetFillColor ( color . NRGBA { 0 , 0 , 0xE5 , 0xFF } ) gc . FillStroke ( & wheel1 , & wheel2 ) }
// FillStyle demonstrates the difference between even odd and non zero winding rule.
FillStyle demonstrates the difference between even odd and non zero winding rule .