cairo_path_extents() question

Cosmin Apreutesei <[email protected]>
Newsgroups gmane.comp.lib.cairo
Message-ID <CAKJdRamr17yryxas8gJ4w00dFvkCAacxwjiMij0LakOsHzjwUg@mail.gmail.com>
Hi,

I can't seem to understand how cairo_path_extents() work. Can anyone
please tell me what I'm doing wrong?

Here's a code sample (in Lua):

cr:identity_matrix()
cr:rotate(math.pi/4)
cr:arc(0, 0, 50, 0, math.pi*2)
print(cr:path_extents())

The printout is:
-70.716202390383	-70.713440254519	70.710678118655	70.713440254519

What I don't understand is how can a circle's bounding box be getting
bigger because I rotate the space? It only happens if the matrix's xy
!= 0 or yx != 0 (so it doesn't happen with translation, scaling or
rotation of multiples of pi/2). I tried path_extents, fill_extends,
stroke_extents, tried with lines, rectangle, circle, the result is the
same. I don't get it :) Can someone please illuminate me? Thanks.

PS: As another example, a square at (0,0,100,100) rotated 45 degrees
around (0,0) gives a bounding box of (-50,-50,150,150). I was
expecting a width of 100*sqrt(2).
-- 
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.