summaryrefslogtreecommitdiff
path: root/src/cairo-arc.c
Commit message (Collapse)AuthorAgeFilesLines
* _arc_max_angle_for_tolerance_normalized: fix infinite loopHeiko Lewin2021-08-011-1/+3
|
* arc: Insert the initial point on the arcChris Wilson2014-09-241-0/+4
| | | | | | | | | Currently the very first point on the arc will be the first interpreted location along the spline used to approximate the arc. This will be close, but not quite the exact point the user intended the arc to run from, so begin the arc with a line-to the initial point. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* arc: Use user endpoint for final stepChris Wilson2012-05-141-12/+17
| | | | | | | | Eliminate numerical inaccuracy from accumulating angle through the floating point step value by using the exact end-value for the last arc segment. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
* doc: Make doc ids more consistent my always putting ':' after themAndrea Canciani2012-03-291-1/+1
| | | | | This makes the documentations comments more consistent and fixes many reports of 'invalid doc id'.
* Fix math in commentsBehdad Esfahbod2012-03-251-1/+1
|
* TypoBehdad Esfahbod2012-03-251-1/+1
|
* arc: Clamp to 65536 full circlesAndrea Canciani2010-12-091-2/+9
| | | | | | To limit the amount of memory used for arcs describing a circle wrapped multiple times we ignore the circles after the 65536th (but preserve the same start and end angle mod 2pi).
* Fix degenerate arcsAndrea Canciani2010-10-291-0/+4
| | | | | | | Make sure that degenerate arcs become a move_to-line_to sequence instead of just a move_to. Fixes get-path-extents.
* Update FSF addressAndrea Canciani2010-04-271-1/+1
| | | | | | | | | | | I updated the Free Software Foundation address using the following script. for i in $(git grep Temple | cut -d: -f1 ) do sed -e 's/59 Temple Place[, -]* Suite 330, Boston, MA *02111-1307[, ]* USA/51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA/' -i "$i" done Fixes http://bugs.freedesktop.org/show_bug.cgi?id=21356
* [build] Add options for warning about bad castsChris Wilson2009-08-291-1/+1
| | | | | -Wbad-function-cast in particular. Triggers quite a few warnings where we have explicitly cast to an integer.
* Remove some bogus XXX marksBehdad Esfahbod2008-05-281-1/+0
| | | | | | | | These are all perfectly correct code. Most are simply there because when we support vertical text writing mode we need to update there, but that's pretty trivial. No special markers needed. /me is trying to make user-font clean of XXX and TODO marks
* [cairo-arc] Protect against division-by-zero.Chris Wilson2008-05-061-1/+1
| | | | | | | Avoid a division-by-zero which can only happen if the start angle is exactly equal to the end angle. Fixes test/degenerate-arc.
* [cairo-arc] Check that the context is not error before proceeding.Chris Wilson2008-04-111-0/+3
| | | | | | | | We depend on values stored on the context that become invalid upon an error, so stop processing as soon as an error occurs. Prior to adjusting, the values returned from the error context, this would cause an infinite loop whilst calculating the number of segments required for a tolerance of 0.
* Rename ARRAY_LEN to ARRAY_LENGTHCarl Worth2007-04-101-1/+1
| | | | Yet another victim in my hunt against abbreviations within cairo's implementation.
* [src] Make sure all source files #include "cairoint.h" as their first includeBehdad Esfahbod2007-04-031-0/+2
| | | | | | | | | | | | | | | | | | This is necessary to avoid many portability problems as cairoint.h includes config.h. Without a test, we will regress again, hence add it. The inclusion idiom for cairo now is: #include "cairoint.h" #include "cairo-something.h" #include "cairo-anotherthing-private.h" #include <some-library.h> #include <other-library/other-file.h> Moreover, some standard headers files are included from cairoint.h and need not be included again.
* Define and use ARRAY_LENBehdad Esfahbod2007-03-201-1/+1
|
* Fix typos in internal documentation.Declan Naughton2006-08-071-2/+2
|
* Remove trailing whitespace from lines that look like comments.Carl Worth2006-06-061-2/+2
| | | | | | | | | | This patch was produced with the following (GNU) sed script: sed -i -r -e '/^[ \t]*\/?\*/ s/[ \t]+$//' run on all *.[ch] files within cairo, (though I manually excluded src/cairo-atsui-font.c which has a code line that appears as a comment to this script).
* Remove extraneous whitespace from "blank" lines.Carl Worth2006-06-061-1/+1
| | | | | | | | This patch was produced with the following (GNU) sed script: sed -i -r -e 's/^[ \t]+$//' run on all *.[ch] files within cairo.
* correct the calculation of the error bound.Bertram Felgenhauer2005-08-221-14/+6
|
* Remove include of math.h since cairoint.h does it more carefully, (for ↵Carl Worth2005-08-051-2/+0
| | | | | | | | annoying platforms for which just including math.h without extra defines is not enough). Replace Cairo with cairo. Include config.h so HAVE_UNISTD_H gets picked up as necessary. Fix non-UTF-8 copyright symbol.
* Note that the cairo_content_t work is done.Carl Worth2005-07-111-0/+2
| | | | Note that this function is computing an incorrect result.
* Don't use return when calling a void function (thanks to Damien Carbery ↵Carl Worth2005-05-101-4/+4
| | | | <damien.carbery@sun.com>). Closes bug #3134.
* Originally: 2005-04-19 Carl Worth <cworth@cworth.org>Carl Worth2005-04-261-0/+296
Add cairo_stroke_preserve, cairo_fill_preserve, and cairo_clip_preserve. Rip the path out of cairo_gstate_t. Add path to cairo_t. Bring in most of the path code that used to live in cairo-gstate.c Move arc generation code into its own file. Accept path+ctm_inverse+tolerance instead of gstate. Absorb flattening and device space->user space conversion that used to be in _cairo_gstate_intepret_path. Prefer cairo_fixed_t parameters over ciaro_point_t for cross-file interfaces. Track changes in _cairo_path_fixed interfaces. Port to use cairo_fill_preserve rather than cairo_save/cairo_restore which no longer work for saving the path. Remove get and set of current point since it is no longer affected by cairo_save and cairo_restore. Add get and set testing for cairo_matrix_t.