Some questions

kde at bartcoppens.be kde at bartcoppens.be
Fri Apr 9 16:04:35 CEST 2004


Hello,  
 
While trying to find out how to give the transform function of the canvas  
anti-aliasing capabilities, I ran into some problems. At this stage they're  
probably not that important, but it may be wise to think about them. 
 
* When a (piece of) canvas is rotated, the area that is not included in the  
rotated canvas should be left blank. But how to define 'blank'? It obviously  
should be transparant when the layer has an alpha-channel, but what if it  
hasn't? Should there be some background-colour variable defined/provided by  
the colour-strategy. Alternatively, maybe the canvas should provide a QUANTUM*  
to the currently active colour in the selector?  
 
* The anti-aliasing of the transform should work with merging different source  
pixels with a weighed value. Simply doing this in the transform itself is  
quite useless, since the different colourspaces can have different ways of  
doing this. Maybe each colour-strategy could implement a function merge(...)  
which merges two QUANTUM*s?  
 
* The transform function seems to be too complex to find an easy anti-aliasing  
function. For individual transforms I've found different techniques, but not  
for an all-in-one like the current one. A possible sollution could be to split 
it up in different shear/rotate/resize functions, but that would lose the 
genericity the current function has. 
 
Bart Coppens 


More information about the kimageshop mailing list