Re: Expected behavior of dashes, lines and patterns under transform

cu <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <[email protected]>
So, would the correct approach to drawing on scaled surface be:
1. Set transform matrix (scale, rotate)
2. Perorm draw operations (i.e. move/lineto)
3. Reset transform matrix
4. Set styles (line width, dash etc)
5. Stroke/fill
Is that correct? I guess that's somewhat acceptable, although in cases
where multiple drawing operations follow each other repeated
setting/unsetting of matrices is going to get tedious.

How much of a performance penalty is there in repeatedly
setting/resetting CTM matrix?

> That's unexpected since all that happens is the coordinates are
> transformed. However, I notice that dashes are handled natively by
> Quartz. Are you seeing similar results using an image surface?
>  
>   
All of the above/below applies to image surface. I've been talking about
Quartz lately, but this is a different sub-project.
I'll try to get some rendering examples showing what the drawing looks
like rendered with pre-scaled data vs. CTM applied.
>> 4. I was unable to draw a source "sprite" pattern  onto a scaled
>> surface, no matter what combination of scaling/resetting to
>> identity/moving etc. I tried.
>>     
>
> That's a basic procedure for compositing and is most definitely expected
> to work! Can you show us the code you think should work and perhaps a
> sketch of the result you want?
>   
I tried many combinations, not sure that any were correct :) I discarded
all the code used in experiments, since it seemed pointless to continue
guessing and I don't like to keep broken code around for too long.
Perhaps a better approach would be some sort of example showing what
this should look like?

--
cairo mailing list
[email protected]
http://lists.cairographics.org/mailman/listinfo/cairo
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.