On Wed, 2008-02-13 at 17:33 +0000, Tomas Frydrych wrote:
> >>
> > 
> > This sounds like a bug - will look into it. 
> 
> That is by design; 

Design by avoidance of particularly tricky stuff ;-)

Im pretty sure old old versions of Clutter used to take scale transforms
at least into account.

> the get_size() functions always return untransformed
> sizes; the get_abs_size () return size as they end up on the screen, so
> get_abs_size () should return the absolute size of the group as
> projected on screen, but I suspect it might be broken, just projecting
> the group bounding box calculated by query_coords(), which is not the
> actual bounding box of the group if the actors in it are transformed.
> 
> We probably need another function here alongside the get_size() and
> get_abs_size () that will calculate the actual bounding box of the group
> taking into account the transformations applied to the actors.
> 

As I understand it;

 - get_size() should return the 'true' bounding box of its children by
calling abs_size|get_vertices on each child. 
 
 - Note its only for its children *not* itself - i.e get_size() would
return the same value for a group in transformed and untransformed
cases.

 - We have a catch22 in that get_abs size will take into account the
size of all parents, but this is fixed by having a
get_abs_size_in_respect_to_a_specific_parent kind of addition (hopefully
better naming).

If we do this, we should probably add a fast path to abs_size for
untransformed actor case.

Shoot me now if Im wrong on the above.

  == Matthew

-- 
To unsubscribe send a mail to [EMAIL PROTECTED]

Reply via email to