/// Draw a surface on the previously defined shape
/// set evenOdd to false to use the nonzero winding number rule to determine the region to fill and to true to use the even-odd rule to determine the region to fill
voidfillPath({boolevenOdd=false}){
buf.putString('f${evenOdd ? '*' : ''}\n');
_buf.putString('f${evenOdd ? '*' : ''}\n');
}
/// Draw the contour of the previously defined shape
voidstrokePath({boolclose=false}){
buf.putString('${close ? 's' : 'S'}\n');
_buf.putString('${close ? 's' : 'S'}\n');
}
/// Close the path with a line
voidclosePath(){
buf.putString('h\n');
_buf.putString('h\n');
}
/// Create a clipping surface from the previously defined shape,
/// to prevent any further drawing outside
voidclipPath({boolevenOdd=false,boolend=true}){
buf.putString('W${evenOdd ? '*' : ''}${end ? ' n' : ''}\n');
_buf.putString('W${evenOdd ? '*' : ''}${end ? ' n' : ''}\n');
}
/// Draw a surface on the previously defined shape and then draw the contour
/// set evenOdd to false to use the nonzero winding number rule to determine the region to fill and to true to use the even-odd rule to determine the region to fill