22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package sun.java2d.pipe;
27
28 import java.awt.Rectangle;
29 import java.awt.Shape;
30 import java.awt.geom.PathIterator;
31 import sun.java2d.SunGraphics2D;
32
33 /**
34 * This class uses a Region iterator to modify the extents of alpha
35 * tiles created during Shape rendering based upon a non-rectangular
36 * clipping path.
37 */
38 public class SpanClipRenderer implements CompositePipe
39 {
40 CompositePipe outpipe;
41
42 static Class RegionClass = Region.class;
43 static Class RegionIteratorClass = RegionIterator.class;
44
45 static {
46 initIDs(RegionClass, RegionIteratorClass);
47 }
48
49 static native void initIDs(Class rc, Class ric);
50
51 public SpanClipRenderer(CompositePipe pipe) {
52 outpipe = pipe;
53 }
54
55 class SCRcontext {
56 RegionIterator iterator;
57 Object outcontext;
58 int band[];
59 byte tile[];
60
61 public SCRcontext(RegionIterator ri, Object outctx) {
62 iterator = ri;
63 outcontext = outctx;
64 band = new int[4];
65 }
66 }
67
68 public Object startSequence(SunGraphics2D sg, Shape s, Rectangle devR,
69 int[] abox) {
|
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package sun.java2d.pipe;
27
28 import java.awt.Rectangle;
29 import java.awt.Shape;
30 import java.awt.geom.PathIterator;
31 import sun.java2d.SunGraphics2D;
32
33 /**
34 * This class uses a Region iterator to modify the extents of alpha
35 * tiles created during Shape rendering based upon a non-rectangular
36 * clipping path.
37 */
38 public class SpanClipRenderer implements CompositePipe
39 {
40 CompositePipe outpipe;
41
42 static Class<?> RegionClass = Region.class;
43 static Class<?> RegionIteratorClass = RegionIterator.class;
44
45 static {
46 initIDs(RegionClass, RegionIteratorClass);
47 }
48
49 static native void initIDs(Class<?> rc, Class<?> ric);
50
51 public SpanClipRenderer(CompositePipe pipe) {
52 outpipe = pipe;
53 }
54
55 class SCRcontext {
56 RegionIterator iterator;
57 Object outcontext;
58 int band[];
59 byte tile[];
60
61 public SCRcontext(RegionIterator ri, Object outctx) {
62 iterator = ri;
63 outcontext = outctx;
64 band = new int[4];
65 }
66 }
67
68 public Object startSequence(SunGraphics2D sg, Shape s, Rectangle devR,
69 int[] abox) {
|