Hmm. You're right.

What I'm trying to achieve is to separate the two concerns: one is drawing a set objects (which requires them to be expressed in a particular coordinate system), and the other is "traverse a particular subscene from the point of view of a particular coordinate system". The traversal is only used for drawing on the code. But it generally could be used for other things (eg, point location: given a point in some coordinate system, find all shapes that intersect that one single point).