Hi Peppe, Peppe <[EMAIL PROTECTED]> wrote on 01/08/2007 08:41:06 AM:
> i would to update bbox position when i move the element (it's called "shape" > in my code; instead "actionNode" is actionNode = elEvt.getTarget()) that i > selected... > > you say that i have to map 4 points... in this way?: Yes, these are the 4 points... > > shape = (Element)actionNode; I think you should add: SVGRect shapeBound = ((SVGLocatable)shape).getBBox(); > SVGMatrix mat = ((SVGLocatable)shape).getScreenCTM(); > SVGMatrix imat = mat.inverse(); > bPt1 = doc.getRootElement().createSVGPoint(); > bPt1.setX(shapeBound.getX()); > bPt1.setY(shapeBound.getY()); > bPt1 = bPt1.matrixTransform(imat); > bPt2 = doc.getRootElement().createSVGPoint(); > bPt2.setX(shapeBound.getX()+shapeBound.getWidth()); > bPt2.setY(shapeBound.getY()); > bPt2 = bPt2.matrixTransform(imat); > bPt3 = doc.getRootElement().createSVGPoint(); > bPt3.setX(shapeBound.getX()); > bPt3.setY(shapeBound.getY()+shapeBound.getHeight()); > bPt3 = bPt3.matrixTransform(imat); > bPt4 = doc.getRootElement().createSVGPoint(); > bPt4.setX(shapeBound.getX()+shapeBound.getWidth()); > bPt4.setY(shapeBound.getY()+shapeBound.getHeight()); > bPt4 = bPt4.matrixTransform(imat); > > but i don't understand how to update these points to the new positions... Add print statements for bPt1-4 to the above, then run this code before the move and after, the result should be the screen pixel coords of the shape before and after the move.