24 Apr 2012 20:53
affine/transform question
In the emf print virtual methods the current transform is pulled out
with:
Geom::Affine tf = m_tr_stack.top();
Is the stack supposed to hold the final transform, or just the stack of
partial transforms?
For instance, for this bug:
https://bugs.launchpad.net/inkscape/+bug/965594
the text SVG has a set of nested transforms, and the top only returns
the inner one. The problem can be
worked around by ungrouping everything, which seems to replace the
serial transformations with a single one for each object. Otherwise it
seems the proper action is to multiply down the transform stack to find
the final complete transform operation.
It looks like the stack is "fed" by the ::bind method, but that just
moves the question out a bit, as that method has a call argument which
is itself a transform. (Unfortunately "bind" is a common string in this
code, so grep was not very helpful in locating whatever it is that calls
the [virtual] ::bind method.)
Thank you,
David Mathog
mathog@...
Manager, Sequence Analysis Facility, Biology Division, Caltech
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
RSS Feed