Hi all,

Here my weekly whiteboard plugin status,

I still work on the drawing system of the whiteboard (jabber-svg-message

send/receive system are done)

Currently the hardest work is to integrate Bézier curves and elliptical

arcs:

it's all shapes with controls points (in this case a SVG-lib would be

useful)

A cubic Bézier segment is defined by a start point, an end point, and two

control points.

The cubic Bézier commands are C and S (c and s for relative coordinates).

a quick description:

*C

name : curveto

Parameters : (x1 y1 x2 y2 x y)+

Description : Draws a cubic Bézier curve from the current point to (x,y)

using (x1,y1) as the control point at the beginning of the curve and (x2,y2)

as the control point at the end of the curve. Multiple sets of coordinates

may be specified to draw a polybézier. At the end of the command, the new

current point becomes the final (x,y) coordinate pair used in the

polybézier.

*S

name : shorthand/smooth curveto

Parameters : (x2 y2 x y)+

Description : Draws a cubic Bézier curve from the current point to

(x,y). The first control point is assumed to be the reflection of the second

control point on the previous command relative to the current point. (If

there is no previous command or if the previous command was not an C, c, S

or s, assume the first control point is coincident with the current point.)

(x2,y2) is the second control point ( i.e., the control point at the end of

the curve). Multiple sets of coordinates may be specified to draw a

polybézier. At the end of the command, the new current point becomes the

final (x,y) coordinate pair used in the polybézier.

For exemple:

<path d="M100,200 C100,100 250,100 250,200 S400,300 400,200" />

result : http://caotic.free.fr/whiteboard/cubic01.svg

(more informations this WE)

Julien