public final class Renderer extends java.lang.Object implements PathConsumer2D
Modifier and Type | Class and Description |
---|---|
private class |
Renderer.ScanlineIterator |
Modifier and Type | Field and Description |
---|---|
private int |
boundsMaxX |
private int |
boundsMaxY |
private int |
boundsMinX |
private int |
boundsMinY |
private Curve |
c |
private static int |
CURX |
private static float |
DEC_BND |
private int[] |
edgeBuckets |
private float |
edgeMaxX |
private float |
edgeMinX |
private float[] |
edges |
private static float |
INC_BND |
(package private) int |
MAX_AA_ALPHA |
private static int |
NEXT |
private int |
numEdges |
private static int |
OR |
private float |
pix_sx0 |
private float |
pix_sy0 |
private int |
sampleRowMax |
private int |
sampleRowMin |
private int[] |
savedAlpha |
private Renderer.ScanlineIterator |
savedIterator |
private static int |
SIZEOF_EDGE |
private static int |
SLOPE |
private int |
SUBPIXEL_LG_POSITIONS_X |
private int |
SUBPIXEL_LG_POSITIONS_Y |
private int |
SUBPIXEL_MASK_X |
private int |
SUBPIXEL_MASK_Y |
private int |
SUBPIXEL_POSITIONS_X |
private int |
SUBPIXEL_POSITIONS_Y |
static int |
WIND_EVEN_ODD |
static int |
WIND_NON_ZERO |
private int |
windingRule |
private float |
x0 |
private float |
y0 |
private static int |
YMAX |
Constructor and Description |
---|
Renderer(int subpixelLgPositionsX,
int subpixelLgPositionsY) |
Renderer(int subpixelLgPositionsX,
int subpixelLgPositionsY,
int pix_boundsX,
int pix_boundsY,
int pix_boundsWidth,
int pix_boundsHeight,
int windingRule) |
Modifier and Type | Method and Description |
---|---|
private void |
addEdgeToBucket(int eptr,
int bucket) |
private void |
addLine(float x1,
float y1,
float x2,
float y2) |
void |
closePath() |
private void |
curveBreakIntoLinesAndAdd(float x0,
float y0,
Curve c,
float x3,
float y3) |
void |
curveTo(float x1,
float y1,
float x2,
float y2,
float x3,
float y3) |
int |
getOutpixMaxX() |
int |
getOutpixMaxY() |
int |
getOutpixMinX() |
int |
getOutpixMinY() |
int |
getSubpixMaxX() |
int |
getSubpixMaxY() |
int |
getSubpixMinX() |
int |
getSubpixMinY() |
void |
lineTo(float pix_x1,
float pix_y1) |
void |
moveTo(float pix_x0,
float pix_y0) |
void |
pathDone() |
void |
produceAlphas(AlphaConsumer ac) |
private void |
quadBreakIntoLinesAndAdd(float x0,
float y0,
Curve c,
float x2,
float y2) |
void |
quadTo(float x1,
float y1,
float x2,
float y2) |
void |
reset(int pix_boundsX,
int pix_boundsY,
int pix_boundsWidth,
int pix_boundsHeight,
int windingRule) |
private float |
tosubpixx(float pix_x) |
private float |
tosubpixy(float pix_y) |
private static final int YMAX
private static final int CURX
private static final int OR
private static final int SLOPE
private static final int NEXT
private static final int SIZEOF_EDGE
private int sampleRowMin
private int sampleRowMax
private float edgeMinX
private float edgeMaxX
private float[] edges
private int[] edgeBuckets
private int numEdges
private static final float DEC_BND
private static final float INC_BND
public static final int WIND_EVEN_ODD
public static final int WIND_NON_ZERO
private final int SUBPIXEL_LG_POSITIONS_X
private final int SUBPIXEL_LG_POSITIONS_Y
private final int SUBPIXEL_POSITIONS_X
private final int SUBPIXEL_POSITIONS_Y
private final int SUBPIXEL_MASK_X
private final int SUBPIXEL_MASK_Y
final int MAX_AA_ALPHA
private int boundsMinX
private int boundsMinY
private int boundsMaxX
private int boundsMaxY
private int windingRule
private float x0
private float y0
private float pix_sx0
private float pix_sy0
private Curve c
private int[] savedAlpha
private Renderer.ScanlineIterator savedIterator
public Renderer(int subpixelLgPositionsX, int subpixelLgPositionsY)
public Renderer(int subpixelLgPositionsX, int subpixelLgPositionsY, int pix_boundsX, int pix_boundsY, int pix_boundsWidth, int pix_boundsHeight, int windingRule)
private void addEdgeToBucket(int eptr, int bucket)
private void quadBreakIntoLinesAndAdd(float x0, float y0, Curve c, float x2, float y2)
private void curveBreakIntoLinesAndAdd(float x0, float y0, Curve c, float x3, float y3)
private void addLine(float x1, float y1, float x2, float y2)
public void reset(int pix_boundsX, int pix_boundsY, int pix_boundsWidth, int pix_boundsHeight, int windingRule)
private float tosubpixx(float pix_x)
private float tosubpixy(float pix_y)
public void moveTo(float pix_x0, float pix_y0)
moveTo
in interface PathConsumer2D
public void lineTo(float pix_x1, float pix_y1)
lineTo
in interface PathConsumer2D
public void curveTo(float x1, float y1, float x2, float y2, float x3, float y3)
curveTo
in interface PathConsumer2D
public void quadTo(float x1, float y1, float x2, float y2)
quadTo
in interface PathConsumer2D
public void closePath()
closePath
in interface PathConsumer2D
public void pathDone()
pathDone
in interface PathConsumer2D
public void produceAlphas(AlphaConsumer ac)
public int getSubpixMinX()
public int getSubpixMaxX()
public int getSubpixMinY()
public int getSubpixMaxY()
public int getOutpixMinX()
public int getOutpixMaxX()
public int getOutpixMinY()
public int getOutpixMaxY()