[21478] | 1 | 2005-01-21 Kjartan Maraas <kmaraas@gnome.org> |
---|
| 2 | |
---|
| 3 | * Release 2.3.17 |
---|
| 4 | |
---|
| 5 | 2004-03-22 Michael Meeks <michael@ximian.com> |
---|
| 6 | |
---|
| 7 | * Makefile.am (EXTRA_DIST): add libart.def. |
---|
| 8 | |
---|
| 9 | 2004-03-04 Glynn Foster <glynn.foster@sun.com> |
---|
| 10 | |
---|
| 11 | * Makefile.am, configure.in, libart-2.0-uninstalled.pc.in: |
---|
| 12 | Add uninstalled pkg-config file. |
---|
| 13 | |
---|
[20812] | 14 | Tue Sep 09 16:30:31 2003 George Lebl <jirka@5z.com> |
---|
| 15 | |
---|
| 16 | * Release 2.3.16 |
---|
| 17 | |
---|
| 18 | * art_render_gradient.c: revert the double comparison test in the |
---|
| 19 | asserts and comment out the two asserts causing crashes |
---|
| 20 | everywhere, see bug #121850 |
---|
| 21 | |
---|
| 22 | 2003-09-02 Alexander Larsson <alexl@redhat.com> |
---|
| 23 | |
---|
| 24 | * configure.in: 2.3.15 |
---|
| 25 | |
---|
| 26 | 2003-08-26 Morten Welinder <terra@gnome.org> |
---|
| 27 | |
---|
| 28 | * art_render_gradient.c (art_render_gradient_linear_render_8): Fix |
---|
| 29 | vertical gradients. Fix yet more floating point comparisons using |
---|
| 30 | !=. For the record, Gnumeric is a heavy user. |
---|
| 31 | |
---|
| 32 | 2003-08-14 Tor Lillqvist <tml@iki.fi> |
---|
| 33 | |
---|
| 34 | Some nitpicking changes for Win32: |
---|
| 35 | |
---|
| 36 | * libart-features.h.in: Declare the variables from the library as |
---|
| 37 | dlimport/dllexport on Win32. |
---|
| 38 | |
---|
| 39 | * Makefile.am: Don't use -lm on Win32. Use the libart.def file. |
---|
| 40 | |
---|
| 41 | * makefile.msc: Update to generate same name DLL and import |
---|
| 42 | library as auto* and libtool. Add missing objects. (But dunno if |
---|
| 43 | it is useful to maintain this file. It isn't distributed in the |
---|
| 44 | source tarballs (should it be?). And, if it were distributed, and |
---|
| 45 | the intention was to support random people really building libart |
---|
| 46 | with MSVC, one should distribute also prebuilt config.h(.win32) |
---|
| 47 | and libart-features.h(.win32) files.) |
---|
| 48 | |
---|
| 49 | * libart-zip.in (DEVZIP): Fix typo. |
---|
| 50 | (DLLDIR): libtool 1.5 installs DLLs in $(prefix)/bin, so look |
---|
| 51 | there, too. |
---|
| 52 | |
---|
| 53 | * libart.def: Add missing entry points. |
---|
| 54 | |
---|
| 55 | * testuta.c: To check that the export/import of the version |
---|
| 56 | variables work, print out them in a comment. Undefine |
---|
| 57 | LIBART_COMPILATION before including libart-features.h. |
---|
| 58 | |
---|
| 59 | 2003-08-08 Alexander Larsson <alexl@redhat.com> |
---|
| 60 | |
---|
| 61 | * configure.in: 2.3.14 |
---|
| 62 | |
---|
| 63 | Fri Jul 25 12:29:35 2003 George Lebl <jirka@5z.com> |
---|
| 64 | |
---|
| 65 | * art_render_gradient.c (art_render_gradient_linear_render_8) |
---|
| 66 | (art_render_gradient_linear_render) (art_render_gradient_linear) |
---|
| 67 | (art_render_gradient_radial_render) (art_render_gradient_radial): |
---|
| 68 | Redo the checks where float was compared by == or != to using |
---|
| 69 | the EPSILON define. Also copy the ArtGradientLinear and |
---|
| 70 | ArtGradientRadial into the source structure, pretending that |
---|
| 71 | these are constants that will never change or be freed by |
---|
| 72 | the caller is utterly evil and in fact for librsvg it is |
---|
| 73 | not constant. This fixes some more very random crashes |
---|
| 74 | when using librsvg with libart (which seems to be the |
---|
| 75 | only usage of the gradient stuff) |
---|
| 76 | |
---|
| 77 | Fri Jul 18 12:57:36 2003 George Lebl <jirka@5z.com> |
---|
| 78 | |
---|
| 79 | * art_render_gradient.c: Fix more comparison-of-doubles by == bugs, |
---|
| 80 | this code is uber ugly. Should fix the fairly random crashes |
---|
| 81 | on asserts I've been having. |
---|
| 82 | |
---|
| 83 | 2003-07-11 Michael Meeks <michael@ximian.com> |
---|
| 84 | |
---|
| 85 | * Version 2.3.13 |
---|
| 86 | |
---|
| 87 | 2003-07-11 Federico Mena Quintero <federico@ximian.com> |
---|
| 88 | |
---|
| 89 | * art_svp_ops.c (art_svp_minus): impl. |
---|
| 90 | |
---|
| 91 | Tue Jul 08 01:15:02 2003 George Lebl <jirka@5z.com> |
---|
| 92 | |
---|
| 93 | * art_render_gradient.c: fix comment as pointed out by alex |
---|
| 94 | |
---|
| 95 | Tue Jul 08 01:13:48 2003 George Lebl <jirka@5z.com> |
---|
| 96 | |
---|
| 97 | * art_render_gradient.c (art_render_gradient_linear_render_8): |
---|
| 98 | when we wish to find the current segment and we go beyond the |
---|
| 99 | last stop due to float fun, use the last segment as that's |
---|
| 100 | really what we want. Avoids a very abrupt assert death. |
---|
| 101 | |
---|
| 102 | 2003-05-05 Alexander Larsson <alexl@redhat.com> |
---|
| 103 | |
---|
| 104 | * configure.in: |
---|
| 105 | Bump to 2.3.12 |
---|
| 106 | |
---|
| 107 | 2003-04-24 Alexander Larsson <alexl@redhat.com> |
---|
| 108 | |
---|
| 109 | * art_uta_vpath.c (art_uta_from_vpath): |
---|
| 110 | Don't silently stomp on memory on bad vpaths. |
---|
| 111 | |
---|
| 112 | 2003-04-11 Alexander Larsson <alexl@redhat.com> |
---|
| 113 | |
---|
| 114 | * art_svp_vpath_stroke.c (render_seg): |
---|
| 115 | Handle cases when dmr2 is very small better. |
---|
| 116 | |
---|
| 117 | 2003-04-10 Alexander Larsson <alexl@redhat.com> |
---|
| 118 | |
---|
| 119 | * art_svp_wind.c (x_order_2): |
---|
| 120 | Handle horizontally aligned segments. |
---|
| 121 | |
---|
[18255] | 122 | 2002-11-25 Alexander Larsson <alexl@redhat.com> |
---|
| 123 | |
---|
| 124 | * configure.in: Bump to 2.3.11 |
---|
| 125 | |
---|
| 126 | 2002-10-16 John Harper <jsh@unfactored.org> |
---|
| 127 | |
---|
| 128 | * art_render_svp.c (art_render_svp_callback, |
---|
| 129 | art_render_svp_callback_span, art_render_svp_callback_opacity, |
---|
| 130 | art_render_svp_callback_opacity_span): if no runs would |
---|
| 131 | normally be emitted, but start is greater than zero, emit a |
---|
| 132 | single run covering the entire width of the rendered region |
---|
| 133 | |
---|
| 134 | 2002-08-18 Havoc Pennington <hp@pobox.com> |
---|
| 135 | |
---|
| 136 | * autogen.sh: hardcode aclocal-1.4/automake-1.4 so that users with |
---|
| 137 | both automake 1.6 and 1.4 installed get the right automake. Means |
---|
| 138 | compilation from CVS will now require the latest automake 1.4 |
---|
| 139 | release, or manually creating symlinks called "automake-1.4" and |
---|
| 140 | "aclocal-1.4" |
---|
| 141 | |
---|
| 142 | 2002-07-01 Alexander Larsson <alexl@redhat.com> |
---|
| 143 | |
---|
| 144 | * Release 2.3.10 |
---|
| 145 | |
---|
| 146 | 2002-07-01 Alexander Larsson <alexl@redhat.com> |
---|
| 147 | |
---|
| 148 | * configure.in (LIBART_VERSION_INFO): |
---|
| 149 | Bump to 2.3.10 |
---|
| 150 | |
---|
| 151 | * art_svp_intersect.c (art_svp_intersect_add_seg): |
---|
| 152 | Initialize seg->wind_left to zero, this avoids |
---|
| 153 | uninitialized memory read later in art_svp_intersect_horiz_commit. |
---|
| 154 | |
---|
| 155 | 2002-06-24 Alexander Larsson <alexl@redhat.com> |
---|
| 156 | |
---|
| 157 | Release 2.3.9. |
---|
| 158 | |
---|
| 159 | 2002-06-24 Alexander Larsson <alexl@redhat.com> |
---|
| 160 | |
---|
| 161 | * configure.in: Bump to 2.3.9 |
---|
| 162 | |
---|
| 163 | 2002-06-04 Balamurali Viswanathan <balamurali.viswanathan@wipro.com> |
---|
| 164 | |
---|
| 165 | * Makefile.am: Added -lm to libart_lgpl_2_la_LIBADD |
---|
| 166 | fixes bug 75711 (Jacob's suggestion) |
---|
| 167 | |
---|
| 168 | 2002-05-08 Raph Levien <raph@pixel.artofcode.com> |
---|
| 169 | |
---|
| 170 | * art_uta_vpath.c (art_uta_add_line): Fixes very subtle |
---|
| 171 | edge case found by Federico Mena Quintero: (96, 96) - |
---|
| 172 | (96.220200017562348, 93.034868598919431). Previously, through |
---|
| 173 | numerical error, xn was a hair to the left, throwing off |
---|
| 174 | the Bresenham iteration. |
---|
| 175 | |
---|
| 176 | 2002-03-08 Tor Lillqvist <tml@iki.fi> |
---|
| 177 | |
---|
| 178 | * configure.in: Minor changes for build on Win32. Call |
---|
| 179 | AC_LIBTOOL_WIN32_DLL. Set automake conditionals OS_WIN32 and |
---|
| 180 | MS_LIB_AVAILABLE. |
---|
| 181 | |
---|
| 182 | * art_affine.c: Include art_misc.h for M_PI, which not necessarily |
---|
| 183 | is in math.h. |
---|
| 184 | |
---|
| 185 | * Makefile.am: On Win32, build and install import libraries, both |
---|
| 186 | for gcc and for MSVC (if available). |
---|
| 187 | |
---|
| 188 | * libart-zip.in: New file. Used to build runtime and developer |
---|
| 189 | package for Win32. |
---|
| 190 | |
---|
| 191 | 2002-02-06 Laszlo Peter <laca@ireland.sun.com> |
---|
| 192 | |
---|
| 193 | * configure.in: add AC_FUNC_ALLOCA |
---|
| 194 | |
---|
| 195 | * art_render_gradient.c: copy alloca hacks from glib/galloca.h |
---|
| 196 | |
---|
| 197 | 2002-02-02 Alexander Larsson <alla@lysator.liu.se> |
---|
| 198 | |
---|
| 199 | * art_render.c: |
---|
| 200 | Add special case for art_render_composite_8 for two cases |
---|
| 201 | that are very common when rendering SVGs with librsvg. |
---|
| 202 | I'm sure these can be optimized further, but i'm feeling |
---|
| 203 | very slow today. |
---|
| 204 | |
---|
| 205 | 2002-02-01 Alex Larsson <alexl@redhat.com> |
---|
| 206 | |
---|
| 207 | * art_render_gradient.c: |
---|
| 208 | Add optimized case for depth==8, n_channels == 3 |
---|
| 209 | |
---|
| 210 | * test_gradient.c: |
---|
| 211 | Test case for gradients. Uses gtk+, so not built by |
---|
| 212 | default. |
---|
| 213 | |
---|
| 214 | 2002-01-10 Anders Carlsson <andersca@gnu.org> |
---|
| 215 | |
---|
| 216 | * Release 2.3.8 |
---|
| 217 | |
---|
| 218 | 2002-01-04 Anders Carlsson <andersca@gnu.org> |
---|
| 219 | |
---|
| 220 | * configure.in: Bump version to 2.3.8. |
---|
| 221 | |
---|
| 222 | 2002-01-03 Darin Adler <darin@bentspoon.com> |
---|
| 223 | |
---|
| 224 | * Makefile.am: Add art_render_mask.[ch]. |
---|
| 225 | |
---|
| 226 | * art_bpath.h: |
---|
| 227 | * art_rect_svp.h: |
---|
| 228 | * art_rect_uta.h: |
---|
| 229 | * art_render.h: |
---|
| 230 | * art_render_gradient.h: |
---|
| 231 | * art_render_mask.h: |
---|
| 232 | * art_render_svp.h: |
---|
| 233 | * art_rgb_svp.h: |
---|
| 234 | * art_svp_intersect.h: |
---|
| 235 | * art_svp_ops.h: |
---|
| 236 | * art_svp_point.h: |
---|
| 237 | * art_svp_render_aa.h: |
---|
| 238 | * art_svp_vpath.h: |
---|
| 239 | * art_svp_vpath_stroke.h: |
---|
| 240 | * art_svp_wind.h: |
---|
| 241 | * art_uta.h: |
---|
| 242 | * art_uta_rect.h: |
---|
| 243 | * art_uta_ops.h: |
---|
| 244 | * art_uta_svp.h: |
---|
| 245 | * art_uta_vpath.h: |
---|
| 246 | * art_vpath_bpath.h: |
---|
| 247 | * art_vpath_dash.h: |
---|
| 248 | * art_vpath_svp.h: |
---|
| 249 | Fix includes so that each header includes what it needs. |
---|
| 250 | |
---|
| 251 | * art_affine.c: |
---|
| 252 | * art_alphagamma.c: |
---|
| 253 | * art_bpath.c: |
---|
| 254 | * art_gray_svp.c: |
---|
| 255 | * art_misc.c: |
---|
| 256 | * art_pixbuf.c: |
---|
| 257 | * art_rect.c: |
---|
| 258 | * art_rect_svp.c: |
---|
| 259 | * art_rect_uta.c: |
---|
| 260 | * art_render.c: |
---|
| 261 | * art_render_gradient.c: |
---|
| 262 | * art_render_mask.c: |
---|
| 263 | * art_render_svp.c: |
---|
| 264 | * art_rgb.c: |
---|
| 265 | * art_rgb_a_affine.c: |
---|
| 266 | * art_rgb_affine.c: |
---|
| 267 | * art_rgb_affine_private.c: |
---|
| 268 | * art_rgb_bitmap_affine.c: |
---|
| 269 | * art_rgb_pixbuf_affine.c: |
---|
| 270 | * art_rgb_rgba_affine.c: |
---|
| 271 | * art_rgb_svp.c: |
---|
| 272 | * art_rgba.c: |
---|
| 273 | * art_svp.c: |
---|
| 274 | * art_svp_intersect.c: |
---|
| 275 | * art_svp_ops.c: |
---|
| 276 | * art_svp_point.c: |
---|
| 277 | * art_svp_render_aa.c: |
---|
| 278 | * art_svp_vpath.c: |
---|
| 279 | * art_svp_vpath_stroke.c: |
---|
| 280 | * art_svp_wind.c: |
---|
| 281 | * art_uta.c: |
---|
| 282 | * art_uta_ops.c: |
---|
| 283 | * art_uta_rect.c: |
---|
| 284 | * art_uta_svp.c: |
---|
| 285 | * art_uta_vpath.c: |
---|
| 286 | * art_vpath.c: |
---|
| 287 | * art_vpath_bpath.c: |
---|
| 288 | * art_vpath_dash.c: |
---|
| 289 | * art_vpath_svp.c: |
---|
| 290 | Fix order of includes so that the corresponding header is |
---|
| 291 | included first, to test that each header includes what it |
---|
| 292 | needs. |
---|
| 293 | |
---|
| 294 | 2002-01-02 Darin Adler <darin@bentspoon.com> |
---|
| 295 | |
---|
| 296 | * art_alphagamma.h: |
---|
| 297 | * art_gray_svp.h: |
---|
| 298 | * art_pixbuf.h: |
---|
| 299 | * art_render.h: |
---|
| 300 | * art_rgb.h: |
---|
| 301 | * art_rgba.h: |
---|
| 302 | Add some missing includes. |
---|
| 303 | |
---|
| 304 | 2001-12-26 Raph Levien <raph@pixel.artofcode.com> |
---|
| 305 | |
---|
| 306 | * art_svp_intersect.c: More fixes to intersector. When tops |
---|
| 307 | coincide, full ordering test is performed (with breaking), |
---|
| 308 | rather than just comparing b from line eq. Also, had a test |
---|
| 309 | for x >= backwards in art_svp_intersect_add_point. Thanks |
---|
| 310 | to Bruce Q. Hammond for test cases. |
---|
| 311 | |
---|
| 312 | 2001-11-21 Raph Levien <raph@pixel.artofcode.com> |
---|
| 313 | |
---|
| 314 | * art_svp_intersect.c (art_svp_intersect_break): Changed break |
---|
| 315 | logic systematically so that new breaks are always in order, |
---|
| 316 | rather than allowing them to become out of order, then try to fix |
---|
| 317 | them up later. It's no doubt possible to come up with cases in |
---|
| 318 | which this reduces precision, but it simplifies life nicely, so I |
---|
| 319 | did it. |
---|
| 320 | |
---|
| 321 | * (art_svp_intersect_horiz): Initialize (a, b, c) values of hs to |
---|
| 322 | avoid UMR's when they are tested later. |
---|
| 323 | |
---|
| 324 | * art_svp_ops.c (print_ps_vpath): Changed the coordinate |
---|
| 325 | transform so that it's done in the PostScript rather than |
---|
| 326 | the C code that outputs the coordinates. This makes it easier |
---|
| 327 | to reconstruct the vector path from the debug output. |
---|
| 328 | |
---|
| 329 | 2001-11-16 Alex Larsson <alexl@redhat.com> |
---|
| 330 | |
---|
| 331 | * art_rect.c (art_drect_svp_union, art_drect_svp): |
---|
| 332 | Don't call art_drect_union() in these functions, since |
---|
| 333 | it considers zero-width or zero-height svg segments to |
---|
| 334 | be empty. This causes it to think i.e. rectangular svps |
---|
| 335 | are empty. |
---|
| 336 | |
---|
| 337 | 2001-11-07 Raph Levien <raph@pixel.artofcode.com> |
---|
| 338 | |
---|
| 339 | * art_svp_intersect.c (art_svp_intersect_horiz): Fixed important |
---|
| 340 | logic bug, failing to test crossings of neighbors when inserting |
---|
| 341 | horizontal lines. Also changed printf to art_dprint. |
---|
| 342 | |
---|
| 343 | * art_misc.c (art_dprint): Added function for debug printing, |
---|
| 344 | so verbose intersector output doesn't have to go through printf. |
---|
| 345 | |
---|
| 346 | * art_misc.h (ART_USE_NEW_INTERSECTOR): I've turned this on |
---|
| 347 | now, as the new intersector certainly seems to be performing |
---|
| 348 | better than the old one now. |
---|
| 349 | |
---|
| 350 | 2001-10-31 Anders Carlsson <andersca@gnu.org> |
---|
| 351 | |
---|
| 352 | * Release 2.3.7 |
---|
| 353 | |
---|
| 354 | 2001-10-15 Raph Levien <raph@pixel.artofcode.com> |
---|
| 355 | |
---|
| 356 | * art_svp_intersect.c (art_svp_intersect_horiz): Minor |
---|
| 357 | logic fix so that horiz segments successfully cross |
---|
| 358 | zero length segments in the active list. |
---|
| 359 | |
---|
| 360 | (art_svp_intersect_test_cross): Flags indicating whether to |
---|
| 361 | do add_point (potentially breaking neighbors) to left and |
---|
| 362 | to right. |
---|
| 363 | |
---|
| 364 | (art_svp_intersect_insert_cross): Provide ART_BREAK_LEFT and |
---|
| 365 | ART_BREAK_RIGHT flags to art_svp_intersect_test_cross, |
---|
| 366 | depending on direction of search. |
---|
| 367 | |
---|
| 368 | (art_svp_intersect_advance_cursor): Provide flags (allow |
---|
| 369 | both left and right breaking) to test_cross. |
---|
| 370 | |
---|
| 371 | 2001-10-15 Raph Levien <raph@pixel.artofcode.com> |
---|
| 372 | |
---|
| 373 | * art_svp_intersect.c (CHEAP_SANITYCHECK): Added an inexpensive |
---|
| 374 | sanitycheck to detect multiple insertions of a segment into the |
---|
| 375 | horiz list. |
---|
| 376 | |
---|
| 377 | (art_svp_writer_rewind_add_point): Avoid breaking lines below |
---|
| 378 | their bottom point. |
---|
| 379 | |
---|
| 380 | (art_svp_intersect_test_cross): Handle cases correctly where |
---|
| 381 | intersection point matches y0 of left or right segment. These _do_ |
---|
| 382 | happen in real world examples. Also, do add_point on newly |
---|
| 383 | inserted intersection point. |
---|
| 384 | |
---|
| 385 | 2001-10-14 Raph Levien <raph@pixel.artofcode.com> |
---|
| 386 | |
---|
| 387 | * art_svp_intersect.c (art_svp_intersect_add_point): Fixed |
---|
| 388 | rather subtle logic bug that misplaced insertion point |
---|
| 389 | when seg argument was NULL. |
---|
| 390 | |
---|
| 391 | 2001-10-11 Raph Levien <raph@pixel.artofcode.com> |
---|
| 392 | |
---|
| 393 | * art_svp_render_aa.c (art_svp_render_aa_iter_step): Got rid |
---|
| 394 | of qsort of steps, and now keep the step list in sorted order. |
---|
| 395 | Further, we combine duplicate steps with the same x value, |
---|
| 396 | which bounds the size of the step list to x1 - x0, so we |
---|
| 397 | don't need to dynamically resize it. Thanks greatly to |
---|
| 398 | Bruce Q. Hammond for the original version of this patch. |
---|
| 399 | |
---|
| 400 | 2001-10-09 Raph Levien <raph@pixel.artofcode.com> |
---|
| 401 | |
---|
| 402 | * art_svp_intersect.c (art_svp_intersect_test_cross): Breaks |
---|
| 403 | bottom part of line segments in "too close" cases. |
---|
| 404 | |
---|
| 405 | 2001-10-09 Raph Levien <raph@pixel.artofcode.com> |
---|
| 406 | |
---|
| 407 | * art_svp_intersect.c (art_svp_writer_rewind_add_point): Fixed |
---|
| 408 | bbox computation. |
---|
| 409 | (art_svp_intersector): Handle degenerate case where input |
---|
| 410 | SVP has 0 segments. |
---|
| 411 | |
---|
| 412 | * art_svp_intersect.h: Moved definition of art_svp_intersector |
---|
| 413 | inside #ifdef __cplusplus, so it links properly against C++ |
---|
| 414 | |
---|
| 415 | 2001-10-09 Raph Levien <raph@pixel.artofcode.com> |
---|
| 416 | |
---|
| 417 | * art_svp_intersect.c (art_svp_intersect_break): Handle |
---|
| 418 | case when break y equals sweep line correctly. Also adds |
---|
| 419 | first try at winding number sanitychecker, but that makes |
---|
| 420 | too many false positives. |
---|
| 421 | |
---|
| 422 | 2001-10-07 Raph Levien <raph@pixel.artofcode.com> |
---|
| 423 | |
---|
| 424 | * art_svp.c (EPSILON): Set to zero if new intersector is |
---|
| 425 | in use - we want svp's to be in strict sorted order. |
---|
| 426 | |
---|
| 427 | * art_svp_intersect.c (art_svp_intersect_test_cross): Explicitly |
---|
| 428 | check that top points are equal, and swap immediately if b is out |
---|
| 429 | of order. |
---|
| 430 | (art_svp_intersect_horiz): Break segments that intersect |
---|
| 431 | horizontal lines. Now passes "two squares with offset" test. |
---|
| 432 | |
---|
| 433 | 2001-10-05 Raph Levien <raph@pixel.artofcode.com> |
---|
| 434 | |
---|
| 435 | * art_svp_intersect.c: Major changes to accommodate |
---|
| 436 | horizontal lines. Intersections of horizontal lines |
---|
| 437 | aren't fully processed, but should work a lot better |
---|
| 438 | than before. |
---|
| 439 | |
---|
| 440 | * testart.c: Minor tweaks. testpat now frees memory |
---|
| 441 | so it can be run under memprof to detect leaks. |
---|
| 442 | |
---|
| 443 | 2001-10-03 Raph Levien <raph@pixel.artofcode.com> |
---|
| 444 | |
---|
| 445 | * art_svp_intersect.c (art_svp_intersect_advance_cursor): |
---|
| 446 | Made test_cross for inserted segments common between |
---|
| 447 | intersection processing and cursor advance, and also took |
---|
| 448 | care of a case that hadn't been handled before. Also added |
---|
| 449 | invariant sanitychecker for debugging purposes. |
---|
| 450 | |
---|
| 451 | 2001-10-02 Raph Levien <raph@pixel.artofcode.com> |
---|
| 452 | |
---|
| 453 | * art_svp_ops.c: ART_USE_NEW_INTERSECTOR variants of svp |
---|
| 454 | ops changed to do shallow free of merged svp. |
---|
| 455 | |
---|
| 456 | 2001-10-01 Raph Levien <raph@acm.org> |
---|
| 457 | |
---|
| 458 | * art_svp_intersect.c: |
---|
| 459 | * art_svp_intersect.h: |
---|
| 460 | * Makefile.am: |
---|
| 461 | * art_misc.h: |
---|
| 462 | * art_svp_wind.h: First commit of new intersector code. It is |
---|
| 463 | turned off by default, but can be enabled by #defining |
---|
| 464 | ART_USE_NEW_INTERSECTOR in art_misc.h. |
---|
| 465 | |
---|
| 466 | * art_svp_ops.c: Make svp ops use new intersector if enabled. |
---|
| 467 | |
---|
| 468 | * art_svp_vpath_stroke.c: Make vpath stroking use new intersector |
---|
| 469 | if enabled. |
---|
| 470 | |
---|
| 471 | * testart.c: New test case for intersector. |
---|
| 472 | |
---|
| 473 | Wed Sep 26 03:48:13 2001 George Lebl <jirka@5z.com> |
---|
| 474 | |
---|
| 475 | * Release 2.3.6 |
---|
| 476 | |
---|
| 477 | Wed Sep 26 03:11:40 2001 George Lebl <jirka@5z.com> |
---|
| 478 | |
---|
| 479 | * gen_art_config.c: Fix 64bit issues, cast sizeof return when |
---|
| 480 | using %d to print it. |
---|
| 481 | |
---|
| 482 | 2001-09-13 Havoc Pennington <hp@redhat.com> |
---|
| 483 | |
---|
| 484 | * Makefile.am: rename library to libart_lgpl_2 |
---|
| 485 | |
---|
| 486 | * libart-2.0.pc.in (Cflags): move includes |
---|
| 487 | |
---|
| 488 | * libart-config.in: move includes |
---|
| 489 | |
---|
| 490 | * Makefile.am: delete libartConf.sh, rename libart-config |
---|
| 491 | (EXTRA_DIST): don't install m4 files |
---|
| 492 | (libart_lgplincdir): move headers |
---|
| 493 | |
---|
| 494 | 2001-08-03 Michael Meeks <michael@ximian.com> |
---|
| 495 | |
---|
| 496 | * Version 2.3.5 for the API freeze. |
---|
| 497 | |
---|
| 498 | 2001-07-12 Darin Adler <darin@bentspoon.com> |
---|
| 499 | |
---|
| 500 | * art_affine.c: (art_affine_expansion): Fix handling of |
---|
| 501 | negative numbers. We ran into this bug a while back when |
---|
| 502 | figuring out why librsvg couldn't handle certain svg files. |
---|
| 503 | |
---|
| 504 | 2001-07-12 Darin Adler <darin@bentspoon.com> |
---|
| 505 | |
---|
| 506 | * art_misc.h: Change art_expand macro so it's a single |
---|
| 507 | statement, using the do while (0) trick, which gets rid |
---|
| 508 | of some warnings. |
---|
| 509 | * art_pixbuf.c: Add a missing include. |
---|
| 510 | * art_vpath_svp.c: (art_vpath_from_svp): Initialize a |
---|
| 511 | variable to avoid a compiler warning. |
---|
| 512 | * gen_art_config.c: Add a missing include. |
---|
| 513 | |
---|
| 514 | 2001-03-24 Martin Baulig <baulig@suse.de> |
---|
| 515 | |
---|
| 516 | Applied the patch from Alexander Larsson which was sitting |
---|
| 517 | in gnome-libs/patches/libart.diff since February. |
---|
| 518 | [FIXME: Alex, can you please provide a ChangeLog?]) |
---|
| 519 | |
---|
| 520 | * art_rgb_a_affine.[ch]: New files. |
---|
| 521 | |
---|
| 522 | 2001-01-07 Hans Breuer <Hans@Breuer.Org> |
---|
| 523 | * art_misc.c : embryonic change to use libart_lgpl on win32 |
---|
| 524 | * libart.def : new file, exported functions for win32 dll |
---|
| 525 | * makefile.msc : handwritten for MSVC compiler |
---|
| 526 | |
---|
| 527 | 2000-09-30 Martin Baulig <baulig@suse.de> |
---|
| 528 | |
---|
| 529 | * libart-2.0.pc.in: Provide pkg-config script. |
---|
| 530 | |
---|
| 531 | * configure.in: Create libart-2.0.pc from libart-2.0.pc.in. |
---|
| 532 | * Makefile.am (pkgconfig_DATA): Install the libart-2.0.pc |
---|
| 533 | script in `$(libdir)/pkgconfig'. |
---|
| 534 | |
---|
| 535 | 2000-08-15 Raph Levien <raph@acm.org> |
---|
| 536 | |
---|
| 537 | * art_render.c (art_render_image_solid_negotiate): Only |
---|
| 538 | sets ART_IMAGE_SOURCE_CAN_COMPOSITE when a compositing |
---|
| 539 | callback is selected. Previously was causing segfaults on |
---|
| 540 | non-alpha images. Thanks to Leonard Rosenthol for spotting |
---|
| 541 | the bug. |
---|
| 542 | |
---|
| 543 | Fri Jun 30 22:56:58 2000 Raph Levien <raph@acm.org> |
---|
| 544 | |
---|
| 545 | * art_render.c (art_render_composite): Fixed a bug that caused |
---|
| 546 | it to ignore the alpha setting. Also art_render_composite_8(). |
---|
| 547 | |
---|
| 548 | 2000-06-01 John Sullivan <sullivan@eazel.com> |
---|
| 549 | |
---|
| 550 | * art_svp_render_aa.c: (art_svp_render_aa_iter_step): |
---|
| 551 | Made it build by correcting struct member name from |
---|
| 552 | Raph's previous checkin. |
---|
| 553 | |
---|
| 554 | Wed May 31 11:10:58 2000 Raph Levien <raph@acm.org> |
---|
| 555 | |
---|
| 556 | * art_svp_render_aa.c (art_svp_render_aa_iter_step): Updated |
---|
| 557 | n_steps_max in iter structure after steps reallocation. |
---|
| 558 | |
---|
| 559 | Tue May 30 10:33:13 2000 Raph Levien <raph@acm.org> |
---|
| 560 | |
---|
| 561 | * art_svp_render_aa.c (art_svp_render_aa_iter_step): Fixed not |
---|
| 562 | updating iter->steps when steps gets reallocated. |
---|
| 563 | |
---|
| 564 | 2000-05-30 Pavel Cisler <pavel@eazel.com> |
---|
| 565 | |
---|
| 566 | * art_rgba.c: |
---|
| 567 | Make it build -- fix a broken include. |
---|
| 568 | |
---|
| 569 | Tue May 30 00:09:21 2000 Raph Levien <raph@acm.org> |
---|
| 570 | |
---|
| 571 | * art_render_gradient.c (art_render_gradient_setpix): Fixed |
---|
| 572 | an off-by-one loop error. |
---|
| 573 | |
---|
| 574 | Mon May 29 15:00:39 2000 Raph Levien <raph@acm.org> |
---|
| 575 | |
---|
| 576 | * Makefile.am: Moved relevant .h files into HEADERS stanza. |
---|
| 577 | |
---|
| 578 | Mon May 29 13:48:49 2000 Raph Levien <raph@acm.org> |
---|
| 579 | |
---|
| 580 | This is a fairly major commit, as it adds both the new, modular |
---|
| 581 | rendering architecture and gradients. Quite a bit of the code |
---|
| 582 | feels like "reference code" now, in that it is (hopefully) |
---|
| 583 | correct, but not necessarily very fast. In addition, there remain |
---|
| 584 | a few things not done, including the use of SVP's as non-driver |
---|
| 585 | mask sources. AlphaGamma and filter level also remain |
---|
| 586 | unimplemented. No compositing modes other than ART_NORMAL are |
---|
| 587 | implemented. All in good time! |
---|
| 588 | |
---|
| 589 | * configure.in: added -Wmissing-prototypes flag. Bumped version |
---|
| 590 | number to 2.3.0. |
---|
| 591 | |
---|
| 592 | * art_render.h: |
---|
| 593 | * art_render.c: Added new rendering architecture. |
---|
| 594 | |
---|
| 595 | * art_render_svp.h: |
---|
| 596 | * art_render_svp.c: Added renderers to use SVP's as mask |
---|
| 597 | sources in new rendering architecture. |
---|
| 598 | |
---|
| 599 | * art_render_gradient.h: |
---|
| 600 | * art_render_gradient.c: Added linear and radial gradients |
---|
| 601 | as image sources in new rendering architecture. |
---|
| 602 | |
---|
| 603 | * art_rgba.h: |
---|
| 604 | * art_rgba.c: Added functions for manipulating and compositing |
---|
| 605 | RGBA pixels. |
---|
| 606 | |
---|
| 607 | * art_svp_wind.c: Added static to trap_epsilon(), #ifdef'd out |
---|
| 608 | traverse(). |
---|
| 609 | |
---|
| 610 | * art_uta_ops.c: Added #include "art_uta_ops.h". |
---|
| 611 | |
---|
| 612 | * art_uta_rect.c: Added #include "art_uta_rect.h". |
---|
| 613 | |
---|
| 614 | * art_uta_svp.h: fixed __ART_UTA_SVP_H__ name. |
---|
| 615 | |
---|
| 616 | * art_misc.h: Added ART_GNUC_NORETURN attribute, added that |
---|
| 617 | to the prototype for art_die(). Added "static" to function |
---|
| 618 | declarations to avoid warnings when compiled with |
---|
| 619 | |
---|
| 620 | * testart.c: Added gradient test. |
---|
| 621 | |
---|
| 622 | Thu May 25 23:30:39 2000 Raph Levien <raph@acm.org> |
---|
| 623 | |
---|
| 624 | * art_svp_render_aa.h: |
---|
| 625 | * art_svp_render_aa.c: Added art_svp_render_aa_iter functions, |
---|
| 626 | suitable for iterative rendering of an svp, one scan line at a |
---|
| 627 | time. |
---|
| 628 | |
---|
| 629 | * configure.in: Bumped version to 2.2.0. |
---|
| 630 | |
---|
| 631 | Tue May 16 15:03:35 2000 Raph Levien <raph@acm.org> |
---|
| 632 | |
---|
| 633 | * art_rgb_pixbuf_affine.c: Included corresponding .h file. |
---|
| 634 | |
---|
| 635 | * art_rgb_pixbuf_affine.h: Put recursive #includes inside |
---|
| 636 | LIBART_COMPILATION test. |
---|
| 637 | |
---|
| 638 | * art_gray_svp.c: |
---|
| 639 | * art_rgb_svp.c: Explicit casts for callback data. Also removed |
---|
| 640 | "render the steps into tmpbuf" comment. |
---|
| 641 | |
---|
| 642 | * gen_art_config.c: |
---|
| 643 | * Makefile.am: |
---|
| 644 | * configure.in: Added code to automatically generate an |
---|
| 645 | art_config.h file, to be installed in libart's include dir. This |
---|
| 646 | file defines ART_SIZEOF_{CHAR,SHORT,INT,LONG} and art_u{8,16,32}. |
---|
| 647 | |
---|
| 648 | * art_misc.h: Moved definition of art_u8 and art_u32 into |
---|
| 649 | art_config.h. Added GCC printf format attributes. |
---|
| 650 | |
---|
| 651 | * art_svp_wind.c (traverse): Fixed UMR bug here. The function |
---|
| 652 | isn't actually used, so it's just for cleanliness. |
---|
| 653 | |
---|
| 654 | 2000-04-18 Lauris Kaplinski <lauris@ariman.ee> |
---|
| 655 | |
---|
| 656 | * art_affine.c (art_affine_to_string): Replaced snprinf with |
---|
| 657 | art_ftoa to avoid localisation of generated numbers |
---|
| 658 | |
---|
| 659 | 2000-04-18 ERDI Gergo <cactus@cactus.rulez.org> |
---|
| 660 | |
---|
| 661 | * art_rgb_pixbuf_affine.h: Included the ArtPixBuf declaration |
---|
| 662 | |
---|
| 663 | Fri Apr 14 16:33:55 2000 Raph Levien <raph@acm.org> |
---|
| 664 | |
---|
| 665 | * art_svp_wind.c (art_svp_uncross, art_svp_rewind_uncrossed): |
---|
| 666 | Fixed uninitialized memory reads when inserting new segment into |
---|
| 667 | active_segs. |
---|
| 668 | |
---|
| 669 | * art_bpath.c (art_bpath_affine_transform): Made it avoid |
---|
| 670 | potential uninitialized memory reads when not all the coordinates |
---|
| 671 | are needed. Thanks to Morten Welinder for spotting both of these |
---|
| 672 | problems. |
---|
| 673 | |
---|
| 674 | 2000-04-05 Raph Levien <raph@gimp.org> |
---|
| 675 | |
---|
| 676 | * art_svp_wind.c: Make "colinear" warnings go to stderr instead |
---|
| 677 | of stdout. Of course, when I finish the new intersector, these |
---|
| 678 | will go away entirely. |
---|
| 679 | |
---|
| 680 | 2000-04-04 Raph Levien <raph@gimp.org> |
---|
| 681 | |
---|
| 682 | * art_uta_vpath.c (art_uta_add_line): Fixed bug that was causing |
---|
| 683 | segfaults on alphas. Thanks to msw for localizing it. |
---|
| 684 | |
---|
| 685 | 2000-01-17 Raph Levien <raph@gimp.org> |
---|
| 686 | |
---|
| 687 | * art_svp_vpath_stroke.c (art_svp_vpath_stroke): Typo in api |
---|
| 688 | header (thanks rak). |
---|
| 689 | |
---|
| 690 | 2000-01-16 Timur Bakeyev <timur@gnu.org> |
---|
| 691 | |
---|
| 692 | * autoconf.sh: Instead of jumping between srdir and builddir just process |
---|
| 693 | all the auto* staff in srcdir. In fact, just saying the same things in |
---|
| 694 | other words. |
---|
| 695 | |
---|
| 696 | 2000-01-10 Elliot Lee <sopwith@redhat.com> |
---|
| 697 | |
---|
| 698 | * Makefile.am, *.h: Add rather bad hacks to the header files to allow compilation |
---|
| 699 | |
---|
| 700 | * Makefile.am: Distribute libart-config.in |
---|
| 701 | |
---|
| 702 | 2000-01-09 Raph Levien <raph@gimp.org> |
---|
| 703 | |
---|
| 704 | art_rgb_pixbuf_affine.c, art_rgb_rgba_affine.c, art_rgb_svp.c, |
---|
| 705 | art_svp.c, art_svp_ops.c, art_svp_point.c, art_svp_render_aa.c, |
---|
| 706 | art_svp_vpath.c, art_svp_vpath_stroke.c, art_svp_wind.c, |
---|
| 707 | art_uta.c, art_uta_ops.c, art_uta_rect.c, art_uta_svp.c, |
---|
| 708 | art_uta_vpath.c, art_vpath.c, art_vpath_bpath.c, art_vpath_dash.c, |
---|
| 709 | art_vpath_svp.c: Added API documentation. |
---|
| 710 | |
---|
| 711 | Fri Sep 24 17:53:21 1999 Raph Levien <raph@acm.org> |
---|
| 712 | |
---|
| 713 | * art_svp_render_aa.c (art_svp_render_insert_active): Avoid |
---|
| 714 | reading undefined memory (thanks to Morten Welinder). |
---|
| 715 | |
---|
| 716 | 1999-09-19 Raph Levien <raph@gimp.org> |
---|
| 717 | |
---|
| 718 | * art_pixbuf.c (art_pixbuf_duplicate): Added a duplicate function |
---|
| 719 | at the request of Michael Meeks. |
---|
| 720 | |
---|
| 721 | 1999-09-11 Raph Levien <raph@gimp.org> |
---|
| 722 | |
---|
| 723 | * art_affine.c (art_affine_to_string): Tightened the predicate for |
---|
| 724 | matching rotate-only affines, which was too weak. Thanks to lewing |
---|
| 725 | for spotting it! |
---|
| 726 | |
---|
| 727 | 1999-09-01 Raph Levien <raph@gimp.org> |
---|
| 728 | |
---|
| 729 | * art_affine.c, art_alphagamma.c, art_bpath.c, art_gray_svp.c, |
---|
| 730 | art_misc.c, art_pixbuf.c, art_rect.c, art_rect_svp.c, |
---|
| 731 | art_rect_uta.c, art_rgb.c, art_rgb_affine.c, |
---|
| 732 | art_rgb_bitmap_affine.c: Updates to api doc headers. |
---|
| 733 | |
---|
| 734 | 1999-08-24 Raph Levien <raph@gimp.org> |
---|
| 735 | |
---|
| 736 | * art_affine.c, art_alphagamma.c, art_alphagamma.h, art_bpath.c, |
---|
| 737 | art_bpath.h, art_gray_svp.c, art_misc.c, art_pixbuf.c, |
---|
| 738 | art_pixbuf.h, art_point.h, art_rect.c, art_rect.h: Added api |
---|
| 739 | documentation headers. |
---|
| 740 | |
---|
| 741 | * testart.c: Added "dash" test, for testing the vpath_dash |
---|
| 742 | functions. |
---|
| 743 | |
---|
| 744 | * art_rgb_pixbuf_affine.h: Fixed the #ifdef for conditional |
---|
| 745 | inclusion. Thanks to Kristian Hogsberg Kristensen for spotting |
---|
| 746 | the bug. |
---|
| 747 | |
---|
| 748 | 1999-08-24 Raph Levien <raph@gimp.org> |
---|
| 749 | |
---|
| 750 | * art_svp_render_aa.c (art_svp_render_aa): Added some tests to |
---|
| 751 | avoid NaN for infinite slopes, which were causing problems on |
---|
| 752 | Alphas. Closes bug #1966. |
---|
| 753 | |
---|
| 754 | 1999-08-20 Federico Mena Quintero <federico@redhat.com> |
---|
| 755 | |
---|
| 756 | * configure.in: Fixed library's libtool version number. |
---|
| 757 | |
---|
| 758 | 1999-08-03 Larry Ewing <lewing@gimp.org> |
---|
| 759 | |
---|
| 760 | * art_vpath_dash.c (art_vpath_dash): fix a bug/typo that was causing |
---|
| 761 | certain paths to loop infinitely. |
---|
| 762 | |
---|
| 763 | 1999-07-28 Raph Levien <raph@gimp.org> |
---|
| 764 | |
---|
| 765 | * art_vpath_dash.[ch]: Added a function to add a dash style |
---|
| 766 | to vpaths. It is tested, but has a couple of rough edges (see |
---|
| 767 | code for details). |
---|
| 768 | |
---|
| 769 | * testart.c: added tests for the new vpath_dash functionality. |
---|
| 770 | |
---|
| 771 | * Makefile.am: added art_vpath_dash.[ch] files. |
---|
| 772 | |
---|
| 773 | 1999-07-26 Raph Levien <raph@gimp.org> |
---|
| 774 | |
---|
| 775 | * art_rgb.c (art_rgb_fill_run): fixed incorrect test for |
---|
| 776 | big-endianness. Thanks to Michael Zucchi for spotting it. |
---|
| 777 | |
---|
| 778 | Fri Jul 16 23:42:59 1999 Tim Janik <timj@gtk.org> |
---|
| 779 | |
---|
| 780 | * art_affine.c (art_affine_flip): flip translation matrixes as well, by |
---|
| 781 | inverting matrix[4] if (horz) and inverting matrix[5] if (vert). |
---|
| 782 | |
---|
| 783 | Fri Jul 16 23:03:26 1999 Tim Janik <timj@gtk.org> |
---|
| 784 | |
---|
| 785 | * art_pixbuf.[hc]: deprecated art_pixbuf_free_shallow(), people should |
---|
| 786 | always free pixbufs with art_pixbuf_free() and use the _dnotify variants |
---|
| 787 | for specific destruction behaviour. |
---|
| 788 | added art_pixbuf_new_rgb_dnotify() and art_pixbuf_new_rgba_dnotify() |
---|
| 789 | which allow for a destruction notification function. (this involved |
---|
| 790 | adding two extra pointers to the ArtPixBuf structure, and removal of |
---|
| 791 | the recently introduced int flags field). |
---|
| 792 | |
---|
| 793 | Mon Jul 12 01:13:23 1999 Tim Janik <timj@gtk.org> |
---|
| 794 | |
---|
| 795 | * art_affine.[hc]: added art_affine_equal(), which checks two |
---|
| 796 | matrixes for equality within grid alignment. |
---|
| 797 | |
---|
| 798 | Fri Jul 9 17:50:19 1999 Tim Janik <timj@gtk.org> |
---|
| 799 | |
---|
| 800 | * art_affine.[hc]: added art_affine_flip() to flip a matrix horizontally |
---|
| 801 | and/or vertically, or just copy it. |
---|
| 802 | added art_affine_shear() to setup a shearing matrix. |
---|
| 803 | |
---|
| 804 | Tue Jul 6 19:03:39 1999 Tim Janik <timj@gtk.org> |
---|
| 805 | |
---|
| 806 | * art_pixbuf.h: added an int flags; member to the end of the |
---|
| 807 | structure, it currently only holds information about whether the |
---|
| 808 | pixels member should be freed. (raph: i think flags is more generic |
---|
| 809 | than free_pixels, so we can reuse that field if further demands popup |
---|
| 810 | in the future). |
---|
| 811 | |
---|
| 812 | * art_pixbuf.c: |
---|
| 813 | (art_pixbuf_new_const_rgba): |
---|
| 814 | (art_pixbuf_new_const_rgb): new functions that prevent the pixels |
---|
| 815 | member from being freed upon art_pixbuf_free (). |
---|
| 816 | (art_pixbuf_free): only free the pixels member if it is non-NULL and |
---|
| 817 | the PIXBUF_FLAG_DESTROY_PIXELS is set. |
---|
| 818 | |
---|
| 819 | 1999-07-02 Raph Levien <raph@gimp.org> |
---|
| 820 | |
---|
| 821 | * art_vpath_bpath.c (art_vpath_render_bez): Bad bad uninitialized |
---|
| 822 | variables. |
---|
| 823 | |
---|
| 824 | * configure.in: added compile warnings. Guess why :) |
---|
| 825 | |
---|
| 826 | 1999-06-28 Raph Levien <raph@gimp.org> |
---|
| 827 | |
---|
| 828 | * art_svp_point.h: |
---|
| 829 | * art_svp_point.c: Added methods for insideness and distance |
---|
| 830 | testing, very useful for ::point methods in canvas items. |
---|
| 831 | |
---|
| 832 | * testart.c: test code to exercise the art_svp_point functions. |
---|
| 833 | |
---|
| 834 | * Makefile.am: Additional entries for art_svp_point. |
---|
| 835 | |
---|
| 836 | 1999-06-28 Raph Levien <raph@gimp.org> |
---|
| 837 | |
---|
| 838 | * art_svp_render_aa.c (art_svp_render_aa): Subtle boundary |
---|
| 839 | case in realloc code -- was causing nasty segfaults. |
---|
| 840 | |
---|
| 841 | Wed Jun 23 15:05:43 1999 Raph Levien <raph@gimp.org> |
---|
| 842 | |
---|
| 843 | * art_rgb_svp.c (art_rgb_svp_alpha_opaque_callback): Missed a |
---|
| 844 | case in the anti-segfault crusade. Thanks lewing! |
---|
| 845 | |
---|
| 846 | Wed Jun 23 11:16:42 1999 Raph Levien <raph@gimp.org> |
---|
| 847 | |
---|
| 848 | * art_rgb_svp.c: Made these routines so they won't segfault even |
---|
| 849 | if alpha is out of range. Of course, that begs the question of |
---|
| 850 | fixing the render routines so they won't _make_ alpha go out of |
---|
| 851 | range, but all in good time. |
---|
| 852 | |
---|
| 853 | Fri Jun 18 17:32:34 1999 Raph Levien <raph@acm.org> |
---|
| 854 | |
---|
| 855 | * art_vpath_bpath.c (art_bez_path_to_vec): Switched to a new |
---|
| 856 | adaptive subdivision algorithm, which (finally!) takes flatness |
---|
| 857 | into account. This should result in both smoother curves and |
---|
| 858 | faster operation. |
---|
| 859 | |
---|
| 860 | Sun Jun 13 21:07:20 1999 Raph Levien <raph@gimp.org> |
---|
| 861 | |
---|
| 862 | * art_svp_wind.c (art_svp_rewind_uncrossed): Made the winding |
---|
| 863 | rule logic even more correct :). I somehow missed the fact that |
---|
| 864 | a clockwise path should be given a winding number of zero; |
---|
| 865 | last night's commit tried to make it -1 (which worked for the |
---|
| 866 | test cases I was using). |
---|
| 867 | |
---|
| 868 | Sun Jun 13 01:23:14 1999 Raph Levien <raph@gimp.org> |
---|
| 869 | |
---|
| 870 | * art_svp_wind.c (art_svp_rewind_uncrossed): Change to winding |
---|
| 871 | rule logic so that it correctly handles the case where the |
---|
| 872 | leftmost segment is negative. |
---|
| 873 | |
---|
| 874 | * Makefile.am (libart_lgplinc_HEADERS): made art_svp_wind.h |
---|
| 875 | a public headerfile. This is needed for the bpath canvas item. |
---|
| 876 | I'm not sure this is the correct way to do it, but it will do |
---|
| 877 | for now. |
---|
| 878 | |
---|
| 879 | * art_vpath_bpath.h: |
---|
| 880 | * art_vpath_bpath.c (art_bez_path_to_vec): Added const to arg. |
---|
| 881 | |
---|
| 882 | * art_vpath_bpath.h: Embarrassing typo. |
---|
| 883 | |
---|
| 884 | * art_bpath.h: Minor tweaks to the #include paths. It is now |
---|
| 885 | consistent with the other header files. |
---|
| 886 | |
---|
| 887 | Wed Jun 9 20:24:45 1999 Raph Levien <raph@gimp.org> |
---|
| 888 | |
---|
| 889 | * art_svp_vpath_stroke.c: Added all remaining line join and cap |
---|
| 890 | types, including round, which takes flatness into account. Several |
---|
| 891 | new internal functions (art_svp_vpath_stroke_arc) and added |
---|
| 892 | flatness argument to a few internal functions. I might want to |
---|
| 893 | change the BEVEL join type to MITER for very small turn angles |
---|
| 894 | (i.e. within a flatness threshold) for efficiency. |
---|
| 895 | |
---|
| 896 | * art_misc.h: Added M_SQRT2 constant. |
---|
| 897 | |
---|
| 898 | Wed Jun 2 21:56:30 1999 Raph Levien <raph@gimp.org> |
---|
| 899 | |
---|
| 900 | * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): Made the |
---|
| 901 | closed path detection capable of PostScript semantics (i.e. it |
---|
| 902 | now senses the difference between ART_MOVETO and ART_MOVETO_OPEN). |
---|
| 903 | |
---|
| 904 | * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): it now |
---|
| 905 | filters out successive points that are (nearly) coincident. This |
---|
| 906 | fixes some of the crashes and hangs, including Tim Janik's |
---|
| 907 | singularity (trying to stroke MOVETO 50, 50; LINETO 50, 50; END). |
---|
| 908 | |
---|
| 909 | * art_svp_wind.c (art_svp_rewind_uncrossed): added a test to |
---|
| 910 | correctly handle empty input svp's. |
---|
| 911 | |
---|
| 912 | * art_svp_wind.c (art_svp_uncross): added a test to correctly |
---|
| 913 | handle empty input svp's. |
---|
| 914 | |
---|
| 915 | Sun Jan 17 20:53:40 1999 Jeff Garzik <jgarzik@pobox.com> |
---|
| 916 | |
---|
| 917 | * art_affine.c: |
---|
| 918 | Include string.h for memcpy. |
---|
| 919 | |
---|
| 920 | * art_svp_vpath.c: |
---|
| 921 | Remove conflicting static func definition. |
---|
| 922 | |
---|
| 923 | * art_uta_svp.c: |
---|
| 924 | Include art_vpath_svp.h for func definition. |
---|
| 925 | |
---|
| 926 | Mon Jan 4 12:47:47 1999 Raph Levien <raph@acm.org> |
---|
| 927 | |
---|
| 928 | * art_bpath.c (art_bpath_affine_transform): Stupid misnaming |
---|
| 929 | of this function (forgot the "art_"). |
---|
| 930 | |
---|
| 931 | Thu Dec 31 09:04:23 1998 Raph Levien <raph@gimp.org> |
---|
| 932 | |
---|
| 933 | * art_affine.c (art_affine_rectilinear): Added this function. |
---|
| 934 | |
---|
| 935 | * art_rect.c (art_drect_affine_transform): Corrected the name (it |
---|
| 936 | was right in the .h). Also made it work with non-rectilinear |
---|
| 937 | transforms, while I was at it. |
---|
| 938 | |
---|
| 939 | Thu Dec 17 11:58:24 1998 Raph Levien <raph@acm.org> |
---|
| 940 | |
---|
| 941 | * art_alphagamma.h: |
---|
| 942 | * art_alphagamma.c: The real code for alphagamma. |
---|
| 943 | |
---|
| 944 | Wed Dec 16 14:18:46 1998 Raph Levien <raph@gimp.org> |
---|
| 945 | |
---|
| 946 | * art_alphagamma.h: |
---|
| 947 | * art_alphagamma.c: Added. At present, it only contains a dummy |
---|
| 948 | stub. When the real code is added, it supports doing alpha |
---|
| 949 | compositing in a gamma-corrected color space (suppressing |
---|
| 950 | jaggies). |
---|
| 951 | |
---|
| 952 | * art_pixbuf.h: |
---|
| 953 | * art_pixbuf.c: Added. This is a virtualization layer over |
---|
| 954 | a few different kinds of image formats. |
---|
| 955 | |
---|
| 956 | * art_rgb_pixbuf_affine.h: |
---|
| 957 | * art_rgb_pixbuf_affine.c: Added. Supports compositing of |
---|
| 958 | generic images over an rgb buffer. |
---|
| 959 | |
---|
| 960 | * art_affine.h: |
---|
| 961 | * art_affine.c (art_affine_expansion): Added this function, |
---|
| 962 | which reports the exact scale factor in the case of rotation, |
---|
| 963 | scaling, and transformation (an approximate number in the |
---|
| 964 | case of shearing or anamorphic distortion). |
---|
| 965 | |
---|
| 966 | * art_misc.h: |
---|
| 967 | * art_misc.c (art_warn): Added. |
---|
| 968 | |
---|
| 969 | * art_rgb_affine.h: |
---|
| 970 | * art_rgb_affine.c: Added alphagamma argument (not yet implemented). |
---|
| 971 | |
---|
| 972 | * art_rgb_affine_private.c: Fixed typo bug that was causing |
---|
| 973 | repaint problems for nonsquare images. |
---|
| 974 | |
---|
| 975 | * art_rgb_bitmap_affine.h: |
---|
| 976 | * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed |
---|
| 977 | correctness while I was at it. Added alphagamma argument (not yet |
---|
| 978 | implemented). |
---|
| 979 | |
---|
| 980 | * art_rgb_svp.h: |
---|
| 981 | * art_rgb_svp.c: Added alphagamma argument (only implemented |
---|
| 982 | in aa case, not yet alpha case). |
---|
| 983 | |
---|
| 984 | * art_vpath.c: increased perturbation to 2e-3, because the old |
---|
| 985 | value (1e-6) was too small. |
---|
| 986 | |
---|
| 987 | * testart.c: added alphagamma. |
---|
| 988 | |
---|
| 989 | * Makefile.am: added new files |
---|
| 990 | |
---|
| 991 | Sun Dec 27 21:45:03 1998 Raph Levien <raph@gimp.org> |
---|
| 992 | |
---|
| 993 | * art_rect.h: |
---|
| 994 | * art_rect.c: Added DRect versions of the basic ops (double |
---|
| 995 | rather than int). |
---|
| 996 | |
---|
| 997 | * art_rect_svp.h: |
---|
| 998 | * art_rect_svp.c: Added. This computes the bounding box of |
---|
| 999 | an svp. |
---|
| 1000 | |
---|
| 1001 | Wed Dec 16 14:18:46 1998 Raph Levien <raph@gimp.org> |
---|
| 1002 | |
---|
| 1003 | * art_alphagamma.h: |
---|
| 1004 | * art_alphagamma.c: Added. At present, it only contains a dummy |
---|
| 1005 | stub. When the real code is added, it supports doing alpha |
---|
| 1006 | compositing in a gamma-corrected color space (suppressing |
---|
| 1007 | jaggies). |
---|
| 1008 | |
---|
| 1009 | * art_pixbuf.h: |
---|
| 1010 | * art_pixbuf.c: Added. This is a virtualization layer over |
---|
| 1011 | a few different kinds of image formats. |
---|
| 1012 | |
---|
| 1013 | * art_rgb_pixbuf_affine.h: |
---|
| 1014 | * art_rgb_pixbuf_affine.c: Added. Supports compositing of |
---|
| 1015 | generic images over an rgb buffer. |
---|
| 1016 | |
---|
| 1017 | * art_affine.h: |
---|
| 1018 | * art_affine.c (art_affine_expansion): Added this function, |
---|
| 1019 | which reports the exact scale factor in the case of rotation, |
---|
| 1020 | scaling, and transformation (an approximate number in the |
---|
| 1021 | case of shearing or anamorphic distortion). |
---|
| 1022 | |
---|
| 1023 | * art_misc.h: |
---|
| 1024 | * art_misc.c (art_warn): Added. |
---|
| 1025 | |
---|
| 1026 | * art_rgb_affine.h: |
---|
| 1027 | * art_rgb_affine.c: Added alphagamma argument (not yet implemented). |
---|
| 1028 | |
---|
| 1029 | * art_rgb_affine_private.c: Fixed typo bug that was causing |
---|
| 1030 | repaint problems for nonsquare images. |
---|
| 1031 | |
---|
| 1032 | * art_rgb_bitmap_affine.h: |
---|
| 1033 | * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed |
---|
| 1034 | correctness while I was at it. Added alphagamma argument (not yet |
---|
| 1035 | implemented). |
---|
| 1036 | |
---|
| 1037 | * art_rgb_svp.h: |
---|
| 1038 | * art_rgb_svp.c: Added alphagamma argument (only implemented |
---|
| 1039 | in aa case, not yet alpha case). |
---|
| 1040 | |
---|
| 1041 | * art_vpath.c: increased perturbation to 2e-3, because the old |
---|
| 1042 | value (1e-6) was too small. |
---|
| 1043 | |
---|
| 1044 | * testart.c: added alphagamma. |
---|
| 1045 | |
---|
| 1046 | * Makefile.am: added new files |
---|
| 1047 | |
---|
| 1048 | Mon Dec 14 00:16:53 1998 Raph Levien <raph@gimp.org> |
---|
| 1049 | |
---|
| 1050 | * art_affine.c (art_affine_to_string): re-added the "scale" method |
---|
| 1051 | that was accidentally deleted before check-in. |
---|
| 1052 | |
---|
| 1053 | * Makefile.am: added new files |
---|
| 1054 | |
---|
| 1055 | Sun Dec 13 00:52:39 1998 Raph Levien <raph@gimp.org> |
---|
| 1056 | |
---|
| 1057 | * art_affine.h: |
---|
| 1058 | * art_affine.c: Added. Everything you ever wanted to do with an |
---|
| 1059 | affine transform. Especially check the functions that generate |
---|
| 1060 | concise PostScript strings for affine transforms. |
---|
| 1061 | |
---|
| 1062 | * art_filterlevel.h: A simple enum for selecting filtering |
---|
| 1063 | style. |
---|
| 1064 | |
---|
| 1065 | * art_rgb_affine.h: |
---|
| 1066 | * art_rgb_affine.c (art_rgb_affine): Added. This function |
---|
| 1067 | composites an (opaque) rgb image over an rgb pixel buffer. At |
---|
| 1068 | present, it's slow and only nearest neighbor filtering is enabled. |
---|
| 1069 | |
---|
| 1070 | * art_rgb_rgba_affine.h: |
---|
| 1071 | * art_rgb_rgba_affine.c: Analogous, but for compositing rgba |
---|
| 1072 | images. |
---|
| 1073 | |
---|
| 1074 | * art_rgb_bitmap_affine.h: |
---|
| 1075 | * art_rgb_bitmap_affine.c: Analogous, but for compositing bitmap |
---|
| 1076 | images. |
---|
| 1077 | |
---|
| 1078 | * art_rgb_affine_private.c (art_rgb_affine_run): Added. This is |
---|
| 1079 | a common function used by all the rgb_affine modules to move |
---|
| 1080 | testing for source image bbox out of the inner loop. |
---|
| 1081 | |
---|
| 1082 | * Makefile.am: added the new files |
---|
| 1083 | |
---|
| 1084 | * testart.c: exercise the image compositors |
---|
| 1085 | |
---|
| 1086 | Wed Dec 9 23:36:35 1998 Raph Levien <raph@gimp.org> |
---|
| 1087 | |
---|
| 1088 | * art_vpath.c (art_vpath_perturb): Made it deal correctly |
---|
| 1089 | with closed paths (the MOVETO and closing LINETO have to |
---|
| 1090 | agree). |
---|
| 1091 | |
---|
| 1092 | * art_svp_wind.c: Made the bbox calculations for the resulting |
---|
| 1093 | svp's correct. |
---|
| 1094 | |
---|
| 1095 | * art_svp.h: |
---|
| 1096 | * art_svp.c: The art_svp_seg_compare function moved here, because |
---|
| 1097 | it's required in art_svp_ops. |
---|
| 1098 | |
---|
| 1099 | * art_svp.c (art_svp_add_segment): It now does bbox calculations. |
---|
| 1100 | |
---|
| 1101 | * art_svp_ops.h: |
---|
| 1102 | * art_svp_ops.c: Added. Populated with basic union, intersection, |
---|
| 1103 | and diff functions. |
---|
| 1104 | |
---|
| 1105 | * art_vpath_svp.h: |
---|
| 1106 | * art_vpath_svp.c: Added. Populated with a function to convert |
---|
| 1107 | from sorted to unsorted vector paths |
---|
| 1108 | |
---|
| 1109 | * Makefile.am: added the new files |
---|
| 1110 | |
---|
| 1111 | * testart.c: exercise the stroke outline and vector path |
---|
| 1112 | operations. |
---|
| 1113 | |
---|
| 1114 | 1998-12-08 Herbert Valerio Riedel <hvr@hvrlab.ml.org> |
---|
| 1115 | |
---|
| 1116 | * art_svp_wind.c: added #include <string.h> for memcpy() |
---|
| 1117 | |
---|
| 1118 | Sun Dec 6 22:15:12 1998 Raph Levien <raph@gimp.org> |
---|
| 1119 | |
---|
| 1120 | * art_svp_wind.[ch], art_svp_vpath_stroke.[ch]: Added, but it |
---|
| 1121 | doesn't work yet. These will do stroke outline and basic |
---|
| 1122 | vector ops like union, intersect, etc. |
---|
| 1123 | |
---|
| 1124 | * art_svp_render_aa.c: Added a simple speedup based on bbox |
---|
| 1125 | culling. I will want to do more speedups, but none of this is |
---|
| 1126 | necessary for the freeze. |
---|
| 1127 | |
---|
| 1128 | * art_svp_vpath.c: Fixed some bugs in the art_svp_from_vpath in |
---|
| 1129 | cases where there is more than one subpath. |
---|
| 1130 | |
---|
| 1131 | * art_vpath.h: |
---|
| 1132 | * art_vpath.c (art_vpath_perturb): Added this function. This will |
---|
| 1133 | help cheat as long as the basic vector ops have numerical |
---|
| 1134 | stability problems. |
---|
| 1135 | |
---|
| 1136 | Fri Dec 4 18:00:38 1998 Raph Levien <raph@gimp.org> |
---|
| 1137 | |
---|
| 1138 | * art_svp_render_aa.c (art_svp_render_aa): Changed the api |
---|
| 1139 | slightly, to guarantee that the steps are all within the range |
---|
| 1140 | from x0 (inclusive) to x1 (exclusive). |
---|
| 1141 | |
---|
| 1142 | * art_gray_svp.c, art_gray_svp.h: Added. Populated with functions |
---|
| 1143 | to render into a simple graymap. |
---|
| 1144 | |
---|
| 1145 | * art_rgb.c, art_rgb.c: Added. Populated with fill_run and |
---|
| 1146 | run_alpha methods. |
---|
| 1147 | |
---|
| 1148 | * art_rgb_svp.c, art_rgb_svp.h: Added. Populated with functions to |
---|
| 1149 | render into an RGB buffer, and to composite over an RGB buffer. |
---|
| 1150 | |
---|
| 1151 | * Makefile.am: added art_gray_svp, art_rgb, and art_rgb_svp. |
---|
| 1152 | |
---|
| 1153 | * testart.c: test the color and layered rendering. |
---|
| 1154 | |
---|
| 1155 | Mon Nov 30 01:30:25 1998 Raph Levien <raph@gimp.org> |
---|
| 1156 | |
---|
| 1157 | * testart.c: added vector path rendering stuff. Some of it needs |
---|
| 1158 | to go out of the test framework and into the module, but the |
---|
| 1159 | api hasn't settled down entirely yet (in the real code, all |
---|
| 1160 | x's in the step field are within bounds). |
---|
| 1161 | |
---|
| 1162 | * art_svp_render_aa.c, art_svp_render_aa.c.h: added. |
---|
| 1163 | |
---|
| 1164 | * art_svp_vpath.c, art_svp_vpath.h: added. |
---|
| 1165 | |
---|
| 1166 | * art_pathcode.h: added ART_MOVETO_OPEN (libart uses an |
---|
| 1167 | ART_MOVETO_OPEN code at the beginning to indicate an open path, |
---|
| 1168 | while PostScript uses the lack of a closepath at the end). |
---|
| 1169 | |
---|
| 1170 | * art_vpath_bpath.c, art_vpath_bpath.h: fixed it up, added |
---|
| 1171 | flatness arg to api. |
---|
| 1172 | |
---|
| 1173 | * Makefile.am: added new source files. |
---|
| 1174 | |
---|
| 1175 | Wed Nov 25 17:19:44 1998 Raph Levien <raph@gimp.org> |
---|
| 1176 | |
---|
| 1177 | * art_svp.h, art_svp.c: added, basic constructors for sorted |
---|
| 1178 | vector paths. |
---|
| 1179 | |
---|
| 1180 | Sun Nov 22 23:21:09 1998 Raph Levien <raph@gimp.org> |
---|
| 1181 | |
---|
| 1182 | * Makefile.am (libart_lgplincdir): Fixed stupid bug in naming of |
---|
| 1183 | the variable. |
---|
| 1184 | |
---|
| 1185 | Sun Nov 22 21:41:13 1998 Raph Levien <raph@gimp.org> |
---|
| 1186 | |
---|
| 1187 | * art_uta_vpath.c: moved art_uta_union into art_uta_ops. |
---|
| 1188 | |
---|
| 1189 | * art_uta_ops.[ch]: added, populated with art_uta_union. |
---|
| 1190 | |
---|
| 1191 | Thu Nov 19 00:19:40 1998 Raph Levien <raph@gimp.org> |
---|
| 1192 | |
---|
| 1193 | * libartConf.sh.in: added |
---|
| 1194 | |
---|
| 1195 | * Makefile.am: added creation of libartConf.sh, added -version-info |
---|
| 1196 | * configure.in: added LIBART_VERSION_INFO, support for libartConf.sh |
---|
| 1197 | |
---|
| 1198 | * libart.m4: updated version history :) |
---|
| 1199 | |
---|
| 1200 | Wed Nov 18 18:15:20 1998 Raph Levien <raph@gimp.org> |
---|
| 1201 | |
---|
| 1202 | * configure.in (LIBART_VERSION): set this, so that libart-config |
---|
| 1203 | --version now works. |
---|
| 1204 | |
---|
| 1205 | Wed Nov 18 16:50:58 1998 Raph Levien <raph@gimp.org> |
---|
| 1206 | |
---|
| 1207 | * libart.m4: added (just copied from esound) |
---|
| 1208 | * configure.in, Makefile.am: added support for libart-config |
---|
| 1209 | * libart-config.in: added (mostly copied from esound) |
---|
| 1210 | |
---|
| 1211 | Tue Nov 10 12:43:30 1998 Raph Levien <raph@acm.org> |
---|
| 1212 | |
---|
| 1213 | * Getting the library in shape for initial checkin to CVS. |
---|
| 1214 | |
---|
| 1215 | |
---|