Sorry, should had given the complete code, so you can see:
canvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC);
canvas.getUpdateManager().getUpdateRunnableQueue().invokeLater(new
Runnable() {
public void run()
{
SVGDocument doc = canvas.getSVGDocument();
String SVGNS = "http://www.w3.org/2000/svg";
Iterator i = spots.iterator();
Element g; // = doc.getElementById("circleGroup");
g = doc.createElementNS(SVGNS,"g");
g.setAttributeNS(null, "id", "circleGroup");
doc.getRootElement().appendChild(g);
while (i.hasNext())
{
Point2D pt2d = (Point2D) i.next();
Element e = doc.createElementNS(SVGNS,"circle");
e.setAttributeNS(null,"cx",""+pt2d.getX());
e.setAttributeNS(null,"cy",""+pt2d.getY());
e.setAttributeNS(null,"r","8");
e.setAttributeNS(null,"fill","Red");
g.appendChild(e);
}
}
});
Many thx
yasmin
> Hi Yasmin,
>
> [EMAIL PROTECTED] wrote on 02/28/2006 03:37:12 PM:
>
>> ...yes you are right I haven't created a group with attribute 'id' set
> to
>> 'circlegroup', not sure how to :( I'm a complete novice to SVG and have
>> embarked on this ambitiouse project I'm finding it very difficult and
> time
>> is running out, pls ELP!
>
> I would add something like:
>
> if (g == null) {
> g = doc.createElementNS(SVGNS,"g");
> g.setAttributeNS(null, "id", "circleGroup");
> doc.getRootElement().appendChild(g);
> }
>
> Right after you call getElementById.
> In your case you could probably also just skip the
> 'getElementById' and 'if' and just create the element in all cases
> (but you should avoid creating it twice - it's bad to have two
> elements with the same 'id' in one document).
>
> BTW If at some point you want to remove the group (and
> consiquently all it's children) you can use:
> g.getParentNode().removeChild(g);
>
> Good luck!
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]