summaryrefslogtreecommitdiff
path: root/gnu/java/awt/java2d/PolyEdge.java
Commit message (Collapse)AuthorAgeFilesLines
* 2007-01-02 Roman Kennke <roman@kennke.org>Roman Kennke2007-01-011-12/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gnu/java/awt/java2d/AbstractGraphics2D.java (FONT): New constant field. This is the default font to use as long as nothing else is set. (paintContext): New field. Temporarily stores the paint context. (scanlineConverters): New field. Stores the scanline converters for each thread. (shapeCache): Genericified. (STANDARD_HINTS): New constant field. The standard rendering hints as long as nothing else is set. (STANDARD_STROKE): New constant field. The standard stroke as long as nothing else is set. (static_initializer): Initialize standard hints. (AbstractGraphics2D): Use constant fields for hints and stroke. (drawGlyphVector): Use simpler method to draw the outline. (fillScanline): Use paintContext field. (fillShape): Use new ScanlineConverter to fill shapes. (fillShapeAntialias): Removed. This will be done in fillShape. (fillShapeImpl): Removed. This is done now in the ScanlineConverter class. (getScanlineConverter): New method. Returns the scanline converter for each thread. (getSegments): Removed. This is now implemented in ScanlineConverter. (getShapeCache): Use genericified shapeCache field. (init): Use fixed default font. Don't fetch destination raster here. * gnu/java/awt/java2d/ActiveEdges.java: New class. Stores a set of active edges for scanline conversion. * gnu/java/awt/java2d/PolyEdge.java (poolNext): Implements linked list for edge pool. (scanlineNext): Implements linked list for scanline edge lists. (slope): Use fixed point decimal. (slope,x0,y0,x1,y1,xIntersection): Use fixed point decimal. (PolyEdge()): New constructor. (PolyEdge): Use fixed point decimals. (init): Use fixed point decimals. (intersect): New method. Intersects this edge with a scanline. * gnu/java/awt/java2d/Scanline.java: New class. A list of edges for a scanline plus utilities. * gnu/java/awt/java2d/ScanlineConverter.java: New class. Implements an efficient scanline converter for rendering Shape objects.
* 2006-06-09 Roman Kennke <kennke@aicas.com>Roman Kennke2006-06-091-1/+2
| | | | | | | | | | * gnu/java/awt/java2d/AbstractGraphics2D.java (drawImage): Fixed scaling. (fillShape): Removed offset handling. (fillShapeImpl): Limit scanlining to device bounds. (getSegments): Removed offset handling. * gnu/java/awt/java2d/PolyEdge.java (toString): Include isClip flag in output.
* 2006-05-08 Roman Kennke <kennke@aicas.com>Roman Kennke2006-05-081-1/+7
| | | | | | | | | | | | | | | | | | * gnu/java/awt/java2d/AbstractGraphics2D.java (fill): Removed commented out code. (fillShape): Also determine the outline of the clip and feed it into the rendering method. Use new helper method for converting the shapes into lists of segments. (getUserBounds): Removed obsolete method. (rawFillShape): Respect the clip when rendering shapes. (fillShapeAntialias): Adjusted signature for new clipped rendering. However, the implementation can't clip still. (getSegments): New helper method for converting a shape into a list of segments. (clipShape): Removed obsolete method. * gnu/java/awt/java2d/PolyEdge.java (isClip): New field. (PolyEdge): Added isField argument to constructor.
* 2006-04-25 Roman Kennke <kennke@aicas.com>Roman Kennke2006-04-251-0/+117
* gnu/java/awt/java2d/AbstractGraphics2D.java (drawString(String,int,int)): Implemented. (drawString(String,float,float)): Implemented. (drawString(AttributedCharacterIterator,int,int)): Implemented. (drawString(AttributedCharacterIterator,float,float)): Implemented. (getFontRenderContext): Implemented. (drawGlyphVector): Implemented. (getFont): Implemented. (setFont): Don't change font setting when null. (getFontMetrics): Implemented. (fillShape): Re-written to fill call rawFillShape() with a list of the edges instead of double arrays. (rawFillShape): Implemented using a polygon scanline conversion. (fillScanline): New helper method. (init): Initialize foreground black. Set font. * gnu/java/awt/java2d/PolyEdge.java: New file. * gnu/java/awt/java2d/PolyEdgeComparator.java: New file.