Thanks Doug, its an exhaustive answer.

--- In [email protected], "Doug Schepers" <[EMAIL PROTECTED]> 
wrote:
>
> Hi, Nazar-
> 
> Nazar wrote:
> | 
> | Hello,
> | I use DOM to add some of the elements to SVG. Currently I use
> | element.setAttribute("x", _x); to position element absolutely.
> | 
> | What I am interested in is  
> | how to position elements relative to its parent element ? 
> 
> There are 2 ways of doing this.  
> 
> 1) You can use a nested SVG element, like this:
> 
> <svg version='1.1' xmlns='http://www.w3.org/2000/svg'
> xmlns:xlink='http://www.w3.org/1999/xlink'>
>    <svg id='nestedSVG' x='50' y='100'>
>       <rect x='25' y='30' width='40' height='40' fill='blue'/>
>       <circle cx='50' cy='100' r='20' fill='orange'/>      
>    </svg>
> </svg>
> 
> Now, when you reposition the "nestedSVG" element by changing its x
and y,
> the child elements will move with it.  In the example above, the
<rect> will
> be positioned at x=50+25=75, y=100+30=130.  The circle will be at
> cx=50+50=100, cy=100+100=200.
> 
> The disadvantage of this is that the <svg> element is relatively
expensive
> computationally, so using a lot of them can cause a problem.  Also, this
> will not work in SVG Tiny viewers.
> 
> 2) You can position the parent using a transform, like this:
> 
> <svg version='1.1' xmlns='http://www.w3.org/2000/svg'
> xmlns:xlink='http://www.w3.org/1999/xlink'>
>    <g tranform='translate(50, 100'>
>       <rect x='25' y='30' width='40' height='40' fill='blue'/>
>       <circle cx='50' cy='100' r='20' fill='orange'/>      
>    </g>
> </svg>
> 
> This is much the same as a nested <svg>, but it is less expensive (it
> doesn't establish its own coordinate system, clipping area, etc.).  The
> disadvantage is that it's not as nice to get and set the transform,
since
> you have to parse out the text string (or use the matrix transform, but
> still not pretty).
> 
> Hope this helps.
> 
> Regards-
> Doug
>







-----
To unsubscribe send a message to: [EMAIL PROTECTED]
-or-
visit http://groups.yahoo.com/group/svg-developers and click "edit my 
membership"
---- 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/svg-developers/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to