< prev index next >
modules/javafx.graphics/src/main/java/com/sun/marlin/RendererContext.java
Print this page
@@ -66,10 +66,16 @@
// Simplifies out collinear lines
public final CollinearSimplifier simplifier = new CollinearSimplifier();
public final Dasher dasher;
// flag indicating the shape is stroked (1) or filled (0)
int stroking = 0;
+ // flag indicating to clip the shape
+ public boolean doClip = false;
+ // flag indicating if the path is closed or not (in advance) to handle properly caps
+ boolean closedPath = false;
+ // clip rectangle (ymin, ymax, xmin, xmax):
+ public final float[] clipRect = new float[4];
// MarlinFX specific:
// dirty bbox rectangle
public final Rectangle clip = new Rectangle();
// dirty MaskMarlinAlphaConsumer
@@ -109,11 +115,11 @@
} else {
stats = null;
}
// MarlinRenderingEngine.TransformingPathConsumer2D
- transformerPC2D = new TransformingPathConsumer2D();
+ transformerPC2D = new TransformingPathConsumer2D(this);
// Renderer shared memory:
rdrMem = new RendererSharedMemory(this);
// Renderer:
@@ -132,11 +138,14 @@
if (stats.totalOffHeap > stats.totalOffHeapMax) {
stats.totalOffHeapMax = stats.totalOffHeap;
}
stats.totalOffHeap = 0L;
}
- stroking = 0;
+ stroking = 0;
+ doClip = false;
+ closedPath = false;
+
// if context is maked as DIRTY:
if (dirty) {
// may happen if an exception if thrown in the pipeline processing:
// force cleanup of all possible pipelined blocks (except Renderer):
< prev index next >