Gustavo wrote:

> On Thu, Aug 28, 2008 at 9:01 AM, Jose Gonzalez <[EMAIL PROTECTED]> wrote:
>   
>>  The patch contains some further improvements on the new grads, and the
>> start
>> of some new things to come for evas, so let me briefly go over some of them
>> here.
>>
>> 1. The start of adding 'fill-transforms' and 'fill-spread' modes to evas
>> image
>> objects. I've added the api and implemented the basic canvas level stuff.
>> Here
>> are the api functions for that (set ones only here), just like the grad2
>> ones:
>>
>> EAPI void evas_object_image_fill_transform_set(Evas_Object *obj,
>> Evas_Transform *t);
>> EAPI void evas_object_image_fill_spread_set(Evas_Object *obj, int
>> tile_mode);
>>     
>
> before going on, we need to always check performance to see if no bad
> performance entered svn.
>
>   
   Image objs won't be affected by any new 'tarnsform' stuff -- if one doens't
use them (ie. identity transform), they'll be as fast or a bit faster (after I
have a chance to do some further stuuf) then they are now.
   Grad2's are even faster -- linear grads are in most cases around 3 times 
faster
than the current ones (not including the horz or vert special ones which are 
vey,
very fast) 


>>  The semantics of the fill-transform is simple: First, border-scale the
>> image
>> to the current fill size, then apply the combined transform of the current
>> fill-
>> transform and the translation to the current fill origin, where the
>> translation
>> to the fill origin is done first (note though that transforms are really
>> used
>> as the inverse transformations of what one wants, so the given fill
>> translation
>> is composed on the left with the given fill-transform). All fill-transforms
>> are
>> taken relative to the image object's top-left as the coordinate system
>> origin,
>> of course.
>>     
>
> what you mean with border scale? I hope it's about current border
> property of Evas, remember that we do need to keep these, also things
> like border_center_fill, if we add those.
>
>   

   Yes, it means that if borders are present one should make sure that the 
semantics
includes that first the image is scaled to the fill size, preserving borders, 
and
then the fill transform applied. :)


>>  This is great opportunity for those who are evas engineers to start
>> thinking/
>> working on 'native' implementations for their engine of interest -- I can't
>> do
>> *all* engines in x amount of time.. and while a simple mechanism to
>> implicitly
>> 'fall-back' to software easily would be nice, that's not quite available
>> right
>> now and in any case the point of much of this is to have as 'native'
>> versions
>> of things as much as possible.
>>     
>
> /me looks at common_16 and cries...
>
>
>   

   I tried to warn you about this when you first started down that path... :)
But no matter, those engines need to be redone.


>> 2. I've also added some api functions for working with transforms.. these
>> will
>> grow over time, but the given ones are all that's likely needed right now.
>> They are:
>>
>> EAPI void evas_transform_identity_set(Evas_Transform *t);
>> EAPI void evas_transform_rotate(double angle, Evas_Transform *t);
>> EAPI void evas_transform_translate(float dx, float dy, Evas_Transform *t);
>> EAPI void evas_transform_scale(float sx, float sy, Evas_Transform *t);
>> EAPI void evas_transform_shear(float sh, float sv, Evas_Transform *t);
>> EAPI void evas_transform_compose(Evas_Transform *l, Evas_Transform *t);
>>     
>
> It's better to keep Evas_Transform as the first parameter, making it
> an OO-like API.
>   

  OK. :)

____________________________________________________________
Get the shot you need with a discreet new spy camera. Click now!
http://thirdpartyoffers.juno.com/TGL2141/fc/Ioyw6i3m1EqgelscckxShwExQWdgSx8eYSg3Mfau00oOPoWe3BcPk4/

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to