@@ -102,7 +102,8 @@ protocol Renderer {
102102 func stroke( path: Types . Path )
103103 func fill( path: Types . Path , rule: Types . FillRule )
104104 func draw( image: Types . Image )
105- func draw( gradient: Types . Gradient , from start: Types . Point , to end: Types . Point )
105+ func draw( linear gradient: Types . Gradient , from start: Types . Point , to end: Types . Point )
106+ func draw( radial gradient: Types . Gradient , at center: Types . Point , radius: Types . Float )
106107}
107108
108109extension Renderer {
@@ -152,11 +153,13 @@ extension Renderer {
152153 fill ( path: p, rule: r)
153154 case . draw( image: let i) :
154155 draw ( image: i)
155- case . drawGradient( let g, let start, let end) :
156- draw ( gradient: g, from: start, to: end)
156+ case . drawLinearGradient( let g, let start, let end) :
157+ draw ( linear: g, from: start, to: end)
158+ case . drawRadialGradient( let g, center: let center, radius: let radius) :
159+ draw ( radial: g, at: center, radius: radius)
157160 }
158161 }
159-
162+
160163 func perform( _ commands: [ RendererCommand < Types > ] ) {
161164 for cmd in commands {
162165 perform ( cmd)
@@ -189,8 +192,9 @@ enum RendererCommand<Types: RendererTypes> {
189192 case fill( Types . Path , rule: Types . FillRule )
190193
191194 case draw( image: Types . Image )
192- case drawGradient( Types . Gradient , from: Types . Point , to: Types . Point )
193-
195+ case drawLinearGradient( Types . Gradient , from: Types . Point , to: Types . Point )
196+ case drawRadialGradient( Types . Gradient , center: Types . Point , radius: Types . Float )
197+
194198 case pushTransparencyLayer
195199 case popTransparencyLayer
196200}
0 commit comments