Jim, I agree your proposals on ShapeUtil and prism settings. Will do it in next webrev after cleanup and OpenJDK9 synchro, certainly happening during this week end.
> I also noticed that the SWContext also chooses a rasterizer for its use using a copy of the decision logic in ShapeUtils. We should probably add a ShapeUtil.getRasterizer() method to return the one that was determined by its algorithm rather than repeat the selection algorithm in SWContext. For SWContext, I figured out that only openpisces.* classes were used directly via imports (hardcoded) so I left it unchanged. So you propose to generalize use of marlin or native pisces ? As I extended the AlphaConsumer to add two specialized methods (clearAlphas and block flag opt fill) for MarlinRenderer we should discuss how to adapt the DirectSWAlphaConsumer with Marlin: it is possible to use a SWRenderer interface (renamed new MarlinRenderer interface) and change all consumers to implement the two new methods in the SW Consumer. Of course it will increase the risk so I propose to create an adaptor in marlin to implement the MarlinAlphaConsumer methods and redirect to the former AlphaConsumer. Looking forward your answers on the several interleaved posts on this thread. Laurent