API Review RT:17407 Canvas Node

Jim Graham james.graham at oracle.com
Thu Apr 19 15:32:45 PDT 2012


I noted that internally as I added the appendSVGPath method right before 
the spec went out for review.  That, and possibly attribute getters will 
likely be our very first enhancements - hopefully for this first release.

Thanks for noticing, though!  We need more eagle eyes to find the holes 
like that...

			...jim

On 4/19/12 6:15 AM, Tom Schindl wrote:
> The SVGPath has a fillRule-Property for a path shouldn't the
> appendSVGPath have such one as well?
>
> Tom
>
> Am 19.04.12 00:36, schrieb joe andresen:
>> Hello Everyone,
>>
>> We propose to add a Canvas node and GraphicsContext to a new
>> javafx.scene.canvas package for JavaFX 2.2. The  javafx.scene.canvas
>> package provides a pair of classes for an immediate mode style API for
>> rendering.  Canvas Node works seemlessly with effects as well as
>> Animation timers, and will be tightly bound to the new ImageOps API.
>>
>> This new API will allow HTML5 Canvas users to easily port their existing
>> applications that make heavy use of the HTML5 canvas directly to JavaFX
>> without the need to morph their application to fit the scenegraph model.
>>
>> You can Download and unzip the (preliminary) relevant docs here:
>> JIRA: http://javafx-jira.kenai.com/browse/RT-17407
>>
>> Note that the docs are a work in progress but should be enough for API
>> Review. (Also, Jira will be down Thursday 4/19 at 1400 PDT for a while).
>>
>> A list of the the methods for Canvas and GraphicsContext are listed below.
>>
>> Canvas:
>>
>> GraphicsContext    getGraphicsContext2D()
>> double    getHeight()
>> double    getWidth()
>> DoubleProperty    heightProperty()
>> void    setHeight(double value)
>> void    setWidth(double value)
>> DoubleProperty    widthProperty()
>>
>> GraphicsContext:
>> void    appendSVGPath(java.lang.String svgpath)
>> void    applyEffect(Effect e)
>> void    arc(double centerX, double centerY, double radiusX, double
>> radiusY, double startAngle, double length)
>> void    arcTo(double x1, double y1, double x2, double y2, double radius)
>> void    beginPath()
>> void    bezierCurveTo(double xc1, double yc1, double xc2, double yc2,
>> double x1, double y1)
>> void    clearRect(double x, double y, double w, double h)
>> void    clip()
>> void    closePath()
>> void    drawArc(double x, double y, double w, double h, double
>> startAngle, double arcExtent, ArcType closure)
>> void    drawImage(Image img, double x, double y)
>> void    drawImage(Image img, double x, double y, double w, double h)
>> void    drawImage(Image img, double sx, double sy, double sw, double sh,
>> double dx, double dy, double dw, double dh)
>> void    drawLine(double x1, double y1, double x2, double y2)
>> void    drawOval(double x, double y, double w, double h)
>> void    drawPolygon(double[] xPoints, double[] yPoints, int nPoints)
>> void    drawPolyline(double[] xPoints, double[] yPoints, int nPoints)
>> void    drawRoundRect(double x, double y, double w, double h, double
>> arcWidth, double arcHeight)
>> void    fill()
>> void    fillArc(double x, double y, double w, double h, double
>> startAngle, double arcExtent, ArcType closure)
>> void    fillOval(double x, double y, double w, double h)
>> void    fillPolygon(double[] xPoints, double[] yPoints, int nPoints)
>> void    fillRect(double x, double y, double w, double h)
>> void    fillRoundRect(double x, double y, double w, double h, double
>> arcWidth, double arcHeight)
>> void    fillText(java.lang.String text, double x, double y)
>> void    fillText(java.lang.String text, double x, double y, double
>> maxWidth)
>> Canvas    getCanvas()
>> boolean    isPointInPath(double x, double y)
>> void    lineTo(double x1, double y1)
>> double    measureText(java.lang.String text)
>> void    moveTo(double x0, double y0)
>> void    putImageData(GraphicsContext.ImageData imagedata, double dx,
>> double dy)
>> void    putImageData(GraphicsContext.ImageData imagedata, double dx,
>> double dy, double dirtyX, double dirtyY, double dirtyWidth, double
>> dirtyHeight)
>> void    quadraticCurveTo(double xc, double yc, double x1, double y1)
>> void    rect(double x, double y, double w, double h)
>> void    restore()
>> void    rotate(double degrees)
>> void    save()
>> void    scale(double x, double y)
>> void    setEffect(Effect e)
>> void    setFill(Paint p)
>> void    setFont(Font f)
>> void    setGlobalAlpha(double alpha)
>> void    setGlobalCompositeOperation(GraphicsContext.CompositeOperation op)
>> void    setLineCap(StrokeLineCap cap)
>> void    setLineJoin(StrokeLineJoin join)
>> void    setLineWidth(double lw)
>> void    setMiterLimit(double ml)
>> void    setStroke(Paint p)
>> void    setTextAlign(TextAlignment align)
>> void    setTextBaseline(VPos baseline)
>> void    setTransform(double mxx, double myx, double mxy, double myy,
>> double mxt, double myt)
>> void    stroke()
>> void    strokeRect(double x, double y, double w, double h)
>> void    strokeText(java.lang.String text, double x, double y)
>> void    strokeText(java.lang.String text, double x, double y, double
>> maxWidth)
>> void    transform(double mxx, double myx, double mxy, double myy, double
>> mxt, double myt)
>> void    translate(double x, double y)
>
>


More information about the openjfx-dev mailing list