Hello community, here is the log from the commit of package gl2ps for openSUSE:Factory checked in at 2015-12-24 12:15:48 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gl2ps (Old) and /work/SRC/openSUSE:Factory/.gl2ps.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gl2ps" Changes: -------- --- /work/SRC/openSUSE:Factory/gl2ps/gl2ps.changes 2015-09-08 17:46:47.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.gl2ps.new/gl2ps.changes 2015-12-24 12:15:49.000000000 +0100 @@ -1,0 +2,7 @@ +Fri Dec 4 10:25:20 UTC 2015 - [email protected] + +- Update to 1.3.9 + * Improved GL_POLYGON_OFFSET_FILL; fixed scaling of images in + SVG output. + +------------------------------------------------------------------- Old: ---- gl2ps-1.3.8.tgz New: ---- gl2ps-1.3.9.tgz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gl2ps.spec ++++++ --- /var/tmp/diff_new_pack.FrFa5i/_old 2015-12-24 12:15:50.000000000 +0100 +++ /var/tmp/diff_new_pack.FrFa5i/_new 2015-12-24 12:15:50.000000000 +0100 @@ -18,7 +18,7 @@ %define so_ver 1 Name: gl2ps -Version: 1.3.8 +Version: 1.3.9 Release: 0 Summary: OpenGL to PostScript Printing Library License: LGPL-2.0+ or SUSE-GL2PS-2.0 @@ -93,7 +93,7 @@ %build %cmake -make +make %{?_smp_mflags} %install %cmake_install @@ -108,7 +108,7 @@ %files devel %defattr(-,root,root,-) -%doc COPYING.GL2PS COPYING.LGPL README.txt TODO.txt gl2ps.pdf gl2psTest*.c +%doc COPYING.GL2PS COPYING.LGPL README.txt gl2ps.pdf gl2psTest*.c %{_includedir}/gl2ps.h %{_libdir}/libgl2ps.so ++++++ gl2ps-1.3.8.tgz -> gl2ps-1.3.9.tgz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/CMakeLists.txt new/gl2ps-1.3.9-source/CMakeLists.txt --- old/gl2ps-1.3.8-source/CMakeLists.txt 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/CMakeLists.txt 2015-10-17 19:56:38.000000000 +0200 @@ -1,5 +1,5 @@ # GL2PS, an OpenGL to PostScript Printing Library -# Copyright (C) 1999-2012 C. Geuzaine +# Copyright (C) 1999-2015 C. Geuzaine # # This program is free software; you can redistribute it and/or # modify it under the terms of either: @@ -49,7 +49,7 @@ set(GL2PS_MAJOR_VERSION 1) set(GL2PS_MINOR_VERSION 3) -set(GL2PS_PATCH_VERSION 8) +set(GL2PS_PATCH_VERSION 9) set(GL2PS_EXTRA_VERSION "" CACHE STRING "GL2PS extra version string") set(GL2PS_VERSION "${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}") @@ -106,6 +106,11 @@ endif(PNG_FOUND) endif(ENABLE_PNG) +find_library(MATH_LIBRARY m) +if(MATH_LIBRARY) + list(APPEND EXTERNAL_LIBRARIES ${MATH_LIBRARY}) +endif(MATH_LIBRARY) + include_directories(${EXTERNAL_INCLUDES}) if(OPENGL_FOUND) @@ -116,8 +121,8 @@ target_link_libraries(shared ${EXTERNAL_LIBRARIES}) set_target_properties(shared PROPERTIES OUTPUT_NAME gl2ps) set_target_properties(shared PROPERTIES - VERSION ${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}.${GL2PS_PATCH_VERSION} - SOVERSION ${GL2PS_MAJOR_VERSION}) + VERSION ${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}.${GL2PS_PATCH_VERSION} + SOVERSION ${GL2PS_MAJOR_VERSION}) if(MSVC) set_target_properties(shared PROPERTIES COMPILE_FLAGS "-DGL2PSDLL -DGL2PSDLL_EXPORTS") endif(MSVC) @@ -180,8 +185,8 @@ set(CPACK_STRIP_FILES TRUE) set(CPACK_SOURCE_PACKAGE_FILE_NAME gl2ps-${GL2PS_VERSION}-source) set(CPACK_SOURCE_GENERATOR TGZ) -set(CPACK_SOURCE_IGNORE_FILES "${CMAKE_BINARY_DIR}" "/CVS/" "/.svn" "~$" - "DS_Store$" "/tmp/" "/bin/" "/lib/") +set(CPACK_SOURCE_IGNORE_FILES "TODO.txt" "${CMAKE_BINARY_DIR}" "/CVS/" + "/.svn" "~$" "DS_Store$" "/tmp/" "/bin/" "/lib/") if(WIN32) set(CPACK_GENERATOR ZIP) else(WIN32) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/COPYING.GL2PS new/gl2ps-1.3.9-source/COPYING.GL2PS --- old/gl2ps-1.3.8-source/COPYING.GL2PS 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/COPYING.GL2PS 2015-10-17 19:51:51.000000000 +0200 @@ -2,8 +2,6 @@ GL2PS LICENSE Version 2, November 2003 - Copyright (C) 2003, Christophe Geuzaine - Permission to use, copy, and distribute this software and its documentation for any purpose with or without fee is hereby granted, provided that the copyright notice appear in all copies and that both diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/TODO.txt new/gl2ps-1.3.9-source/TODO.txt --- old/gl2ps-1.3.8-source/TODO.txt 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/TODO.txt 1970-01-01 01:00:00.000000000 +0100 @@ -1,16 +0,0 @@ -* Add an option to limit the recursion level depth in BSP tree - -* Add an simple option to subdivide long, stretched triangles so that - SIMPLE_SORT can still be used for simple, non-intersecting geometries - (cf. Olivier Couet's long cylinders at Cern) where BSP_SORT is very - slow due to the presence of many, many curved surfaces - -* do we really need gl2psEnable(GL2PS_BLEND)? Couldn't we just check - what's in rgba[3] and try to do the "right thing" right away? - Update Thu Jul 20 14:51:33 2006: that's what I do now for SVG and it - works pretty well. We could probably significantly simplify the PDF - code that way. - -* Think about a way to provide a progress indicator through a - callback. Not easy for BSP trees due to the recursive - implementation. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/gl2ps.c new/gl2ps-1.3.9-source/gl2ps.c --- old/gl2ps-1.3.8-source/gl2ps.c 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/gl2ps.c 2015-10-17 18:26:03.000000000 +0200 @@ -1,6 +1,6 @@ /* * GL2PS, an OpenGL to PostScript Printing Library - * Copyright (C) 1999-2012 C. Geuzaine + * Copyright (C) 1999-2015 C. Geuzaine * * This program is free software; you can redistribute it and/or * modify it under the terms of either: @@ -183,7 +183,7 @@ GLushort pattern; char boundary, offset, culled; GLint factor; - GLfloat width; + GLfloat width, ofactor, ounits; GL2PSvertex *verts; union { GL2PSstring *text; @@ -211,7 +211,7 @@ GLint format, sort, options, colorsize, colormode, buffersize; char *title, *producer, *filename; GLboolean boundary, blending; - GLfloat *feedback, offset[2], lastlinewidth; + GLfloat *feedback, lastlinewidth; GLint viewport[4], blendfunc[2], lastfactor; GL2PSrgba *colormap, lastrgba, threshold, bgcolor; GLushort lastpattern; @@ -428,7 +428,7 @@ #if !defined(GL2PS_HAVE_NO_VSNPRINTF) /* Try writing the string to a 1024 byte buffer. If it is too small to fit, keep trying larger sizes until it does. */ - size_t bufsize = sizeof(buf); + int bufsize = sizeof(buf); #endif if(gl2ps->options & GL2PS_COMPRESS){ va_start(args, fmt); @@ -893,6 +893,8 @@ prim->verts[0].xyz[2] = pos[2]; prim->culled = 0; prim->offset = 0; + prim->ofactor = 0.0; + prim->ounits = 0.0; prim->pattern = 0; prim->factor = 0; prim->width = 1; @@ -1044,6 +1046,8 @@ prim->numverts = p->numverts; prim->boundary = p->boundary; prim->offset = p->offset; + prim->ofactor = p->ofactor; + prim->ounits = p->ounits; prim->pattern = p->pattern; prim->factor = p->factor; prim->culled = p->culled; @@ -1241,6 +1245,8 @@ child->boundary = 0; /* FIXME: not done! */ child->culled = parent->culled; child->offset = parent->offset; + child->ofactor = parent->ofactor; + child->ounits = parent->ounits; child->pattern = parent->pattern; child->factor = parent->factor; child->width = parent->width; @@ -1377,6 +1383,8 @@ (*t1)->numverts = (*t2)->numverts = 3; (*t1)->culled = (*t2)->culled = quad->culled; (*t1)->offset = (*t2)->offset = quad->offset; + (*t1)->ofactor = (*t2)->ofactor = quad->ofactor; + (*t1)->ounits = (*t2)->ounits = quad->ounits; (*t1)->pattern = (*t2)->pattern = quad->pattern; (*t1)->factor = (*t2)->factor = quad->factor; (*t1)->width = (*t2)->width = quad->width; @@ -1695,8 +1703,8 @@ } } else if(prim->offset && (prim->type == GL2PS_TRIANGLE)){ - factor = gl2ps->offset[0]; - units = gl2ps->offset[1]; + factor = prim->ofactor; + units = prim->ounits; area = (prim->verts[1].xyz[0] - prim->verts[0].xyz[0]) * (prim->verts[2].xyz[1] - prim->verts[1].xyz[1]) - @@ -1916,6 +1924,8 @@ child->boundary = 0; /* FIXME: not done! */ child->culled = parent->culled; child->offset = parent->offset; + child->ofactor = parent->ofactor; + child->ounits = parent->ounits; child->pattern = parent->pattern; child->factor = parent->factor; child->width = parent->width; @@ -2104,6 +2114,8 @@ b = (GL2PSprimitive*)gl2psMalloc(sizeof(GL2PSprimitive)); b->type = GL2PS_LINE; b->offset = prim->offset; + b->ofactor = prim->ofactor; + b->ounits = prim->ounits; b->pattern = prim->pattern; b->factor = prim->factor; b->culled = prim->culled; @@ -2175,6 +2187,7 @@ static void gl2psAddPolyPrimitive(GLshort type, GLshort numverts, GL2PSvertex *verts, GLint offset, + GLfloat ofactor, GLfloat ounits, GLushort pattern, GLint factor, GLfloat width, char boundary) { @@ -2187,6 +2200,8 @@ memcpy(prim->verts, verts, numverts * sizeof(GL2PSvertex)); prim->boundary = boundary; prim->offset = offset; + prim->ofactor = ofactor; + prim->ounits = ounits; prim->pattern = pattern; prim->factor = factor; prim->width = width; @@ -2229,7 +2244,7 @@ GLushort pattern = 0; GLboolean boundary; GLint i, sizeoffloat, count, v, vtot, offset = 0, factor = 0, auxindex = 0; - GLfloat lwidth = 1.0F, psize = 1.0F; + GLfloat lwidth = 1.0F, psize = 1.0F, ofactor, ounits; GLfloat *current; GL2PSvertex vertices[3]; GL2PSprimitive *prim; @@ -2249,7 +2264,7 @@ i = gl2psGetVertex(&vertices[0], current); current += i; used -= i; - gl2psAddPolyPrimitive(GL2PS_POINT, 1, vertices, 0, + gl2psAddPolyPrimitive(GL2PS_POINT, 1, vertices, 0, 0.0, 0.0, pattern, factor, psize, 0); break; case GL_LINE_TOKEN : @@ -2262,7 +2277,7 @@ i = gl2psGetVertex(&vertices[1], current); current += i; used -= i; - gl2psAddPolyPrimitive(GL2PS_LINE, 2, vertices, 0, + gl2psAddPolyPrimitive(GL2PS_LINE, 2, vertices, 0, 0.0, 0.0, pattern, factor, lwidth, 0); break; case GL_POLYGON_TOKEN : @@ -2286,8 +2301,8 @@ } else flag = 0; - gl2psAddPolyPrimitive(GL2PS_TRIANGLE, 3, vertices, offset, - pattern, factor, 1, flag); + gl2psAddPolyPrimitive(GL2PS_TRIANGLE, 3, vertices, offset, ofactor, + ounits, pattern, factor, 1, flag); vertices[1] = vertices[2]; } else @@ -2305,8 +2320,20 @@ break; case GL_PASS_THROUGH_TOKEN : switch((GLint)current[1]){ - case GL2PS_BEGIN_OFFSET_TOKEN : offset = 1; break; - case GL2PS_END_OFFSET_TOKEN : offset = 0; break; + case GL2PS_BEGIN_OFFSET_TOKEN : + offset = 1; + current += 2; + used -= 2; + ofactor = current[1]; + current += 2; + used -= 2; + ounits = current[1]; + break; + case GL2PS_END_OFFSET_TOKEN : + offset = 0; + ofactor = 0.0; + ounits = 0.0; + break; case GL2PS_BEGIN_BOUNDARY_TOKEN : boundary = GL_TRUE; break; case GL2PS_END_BOUNDARY_TOKEN : boundary = GL_FALSE; break; case GL2PS_END_STIPPLE_TOKEN : pattern = factor = 0; break; @@ -2348,6 +2375,8 @@ prim->verts = (GL2PSvertex *)gl2psMalloc(4 * sizeof(GL2PSvertex)); prim->culled = 0; prim->offset = 0; + prim->ofactor = 0.0; + prim->ounits = 0.0; prim->pattern = 0; prim->factor = 0; prim->width = 1; @@ -5064,8 +5093,14 @@ sizeof(unsigned char)); gl2psConvertPixmapToPNG(pixmap, png); gl2psListEncodeBase64(png); + + /* Use "transform" attribute to scale and translate the image from + the coordinates origin (0,0) */ + y -= pixmap->zoom_y * (GLfloat)pixmap->height; gl2psPrintf("<image x=\"%g\" y=\"%g\" width=\"%d\" height=\"%d\"\n", - x, y - pixmap->height, pixmap->width, pixmap->height); + 0., 0., pixmap->width, pixmap->height); + gl2psPrintf("transform=\"matrix(%g,0,0,%g,%g,%g)\"\n", + pixmap->zoom_x, pixmap->zoom_y, x, y); gl2psPrintf("xlink:href=\"data:image/png;base64,"); for(i = 0; i < gl2psListNbr(png); i++){ gl2psListRead(png, i, &c); @@ -5447,7 +5482,12 @@ prim->verts[0].rgba[0], prim->verts[0].rgba[1], prim->verts[0].rgba[2], prim->data.text->str); - fprintf(gl2ps->stream, "}{}{\\pgfusepath{discard}}}\n"); + fprintf(gl2ps->stream, "}{}{\\pgfusepath{discard}}}"); + + if(prim->data.text->angle) + fprintf(gl2ps->stream, "}"); + + fprintf(gl2ps->stream, "\n"); break; case GL2PS_SPECIAL : /* alignment contains the format for which the special output text @@ -5929,6 +5969,8 @@ prim->verts[0].xyz[2] = pos[2]; prim->culled = 0; prim->offset = 0; + prim->ofactor = 0.0; + prim->ounits = 0.0; prim->pattern = 0; prim->factor = 0; prim->width = 1; @@ -6003,14 +6045,17 @@ GL2PSDLL_API GLint gl2psEnable(GLint mode) { GLint tmp; + GLfloat tmp2; if(!gl2ps) return GL2PS_UNINITIALIZED; switch(mode){ case GL2PS_POLYGON_OFFSET_FILL : glPassThrough(GL2PS_BEGIN_OFFSET_TOKEN); - glGetFloatv(GL_POLYGON_OFFSET_FACTOR, &gl2ps->offset[0]); - glGetFloatv(GL_POLYGON_OFFSET_UNITS, &gl2ps->offset[1]); + glGetFloatv(GL_POLYGON_OFFSET_FACTOR, &tmp2); + glPassThrough(tmp2); + glGetFloatv(GL_POLYGON_OFFSET_UNITS, &tmp2); + glPassThrough(tmp2); break; case GL2PS_POLYGON_BOUNDARY : glPassThrough(GL2PS_BEGIN_BOUNDARY_TOKEN); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/gl2ps.h new/gl2ps-1.3.9-source/gl2ps.h --- old/gl2ps-1.3.8-source/gl2ps.h 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/gl2ps.h 2015-10-17 18:25:24.000000000 +0200 @@ -1,6 +1,6 @@ /* * GL2PS, an OpenGL to PostScript Printing Library - * Copyright (C) 1999-2012 C. Geuzaine + * Copyright (C) 1999-2015 C. Geuzaine * * This program is free software; you can redistribute it and/or * modify it under the terms of either: @@ -84,14 +84,14 @@ #define GL2PS_MAJOR_VERSION 1 #define GL2PS_MINOR_VERSION 3 -#define GL2PS_PATCH_VERSION 8 +#define GL2PS_PATCH_VERSION 9 #define GL2PS_EXTRA_VERSION "" #define GL2PS_VERSION (GL2PS_MAJOR_VERSION + \ 0.01 * GL2PS_MINOR_VERSION + \ 0.0001 * GL2PS_PATCH_VERSION) -#define GL2PS_COPYRIGHT "(C) 1999-2012 C. Geuzaine" +#define GL2PS_COPYRIGHT "(C) 1999-2015 C. Geuzaine" /* Output file formats (the values and the ordering are important!) */ Files old/gl2ps-1.3.8-source/gl2ps.pdf and new/gl2ps-1.3.9-source/gl2ps.pdf differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/gl2ps.tex new/gl2ps-1.3.9-source/gl2ps.tex --- old/gl2ps-1.3.8-source/gl2ps.tex 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/gl2ps.tex 2015-10-17 18:46:44.000000000 +0200 @@ -1,6 +1,6 @@ % % GL2PS, an OpenGL to PostScript Printing Library -% Copyright (C) 1999-2012 C. Geuzaine +% Copyright (C) 1999-2015 C. Geuzaine % % This program is free software; you can redistribute it and/or % modify it under the terms of either: @@ -32,7 +32,7 @@ % % Please report all bugs and problems to <[email protected]>. -%%tth: \begin{html}<link href="http://geuz.org/geuz.css" rel="stylesheet" type="text/css"> <style type="text/css"> h3 { border-bottom: 0; }</style><title>GL2PS: an OpenGL to PostScript printing library</title>\end{html} +%%tth: \begin{html}<meta name="viewport" content="width=device-width, initial-scale=1.0"> <link href="http://geuz.org/geuz.css" rel="stylesheet" type="text/css"> <style type="text/css"> h3 { border-bottom: 0; }</style><title>GL2PS: an OpenGL to PostScript printing library</title>\end{html} \documentclass[10pt]{article} @@ -62,44 +62,36 @@ \title{GL2PS: an OpenGL to PostScript printing library} \author{Christophe Geuzaine} -\date{Version 1.3.8, November 27 2012} \maketitle \special{html:<center> -<table width="50%" style="border:0;padding:4px;"> -<tr style="border:0;padding:4px;"> -<td style="border:0;padding:4px;"><a - href="http://geuz.org/gl2ps/outBspCulled.ps"><img - src="http://geuz.org/gl2ps/outThumbnail.png" alt="PS"></a></td> -<td style="border:0;padding:4px;"><a - href="http://geuz.org/gl2ps/outBspCulled.eps"><img - src="http://geuz.org/gl2ps/outThumbnail.png" alt="EPS"></a></td> -<td style="border:0;padding:4px;"><a - href="http://geuz.org/gl2ps/outBspCulledCompressed.pdf"><img - src="http://geuz.org/gl2ps/outThumbnail.png" alt="PDF"></a></td> -<td style="border:0;padding:4px;"><a - href="http://geuz.org/gl2ps/outBspCulled.svg"><img - src="http://geuz.org/gl2ps/outThumbnail.png" alt="SVG"></a></td> -</tr> -<tr style="border:0;padding:4px;"> -<td colspan="4" style="border:0;padding:4px;"><small><em>Example: compressed -<a href="http://geuz.org/gl2ps/outBspCulled.ps">PS</a>, -<a href="http://geuz.org/gl2ps/outBspCulled.eps">EPS</a>, -<a href="http://geuz.org/gl2ps/outBspCulledCompressed.pdf">PDF</a> and -<a href="http://geuz.org/gl2ps/outBspCulled.svg">SVG</a> -files created with the <tt>gl2psTest.c</tt> demo provided in the -distribution. This illustrates the handling of smooth shading, -intersecting primitives, line stippling, vector text rendering, -multiple viewports and mixed vector/bitmap output. Compare with a -<a href="http://geuz.org/gl2ps/outBitmap.png">PNG</a> screenshot of -the OpenGL window.</em></small></td> -</tr> -</table> + <p> + <a href="http://geuz.org/gl2ps/outBspCulled.ps"><img width="12%" + src="http://geuz.org/gl2ps/outThumbnail.png" alt="PS"></a> + <a href="http://geuz.org/gl2ps/outBspCulled.eps"><img width="12%" + src="http://geuz.org/gl2ps/outThumbnail.png" alt="EPS"></a> + <a href="http://geuz.org/gl2ps/outBspCulledCompressed.pdf"><img width="12%" + src="http://geuz.org/gl2ps/outThumbnail.png" alt="PDF"></a> + <a href="http://geuz.org/gl2ps/outBspCulled.svg"><img width="12%" + src="http://geuz.org/gl2ps/outThumbnail.png" alt="SVG"></a> + </p> + <p><small><em>Example: + <a href="http://geuz.org/gl2ps/outBspCulled.ps">PS</a>, + <a href="http://geuz.org/gl2ps/outBspCulled.eps">EPS</a>, + <a href="http://geuz.org/gl2ps/outBspCulledCompressed.pdf">PDF</a> and + <a href="http://geuz.org/gl2ps/outBspCulled.svg">SVG</a> + files created with the <tt>gl2psTest.c</tt> demo provided in the + distribution. This illustrates the handling of smooth shading, + intersecting primitives, line stippling, vector text rendering, + multiple viewports and mixed vector/bitmap output. Compare with a + <a href="http://geuz.org/gl2ps/outBitmap.png">PNG</a> screenshot of + the OpenGL window.</em></small> + </p> </center> <h2>Download</h2> The latest stable version of GL2PS is <a -href="http://geuz.org/gl2ps/src/gl2ps-1.3.8.tgz">gl2ps-1.3.8.tgz</a>. Older +href="http://geuz.org/gl2ps/src/gl2ps-1.3.9.tgz">gl2ps-1.3.9.tgz</a>. Older versions and nightly source snapshots are available <a href="http://geuz.org/gl2ps/src/">here</a>. For read-only svn access use: '<code>svn co https://geuz.org/svn/gl2ps/trunk gl2ps</code>' (username: @@ -113,17 +105,19 @@ href="http://geuz.org/mailman/listinfo/gl2ps-announce/">gl2ps-announce</a> mailing list to be notified automatically when a new version of GL2PS is released. -<p> - <form action="https://www.paypal.com/cgi-bin/webscr" method="post"> - <input type="hidden" name="cmd" value="_xclick"> - <input type="hidden" name="business" value="[email protected]"> - <input type="hidden" name="item_name" value="GL2PS donation"> - <input type="hidden" name="no_note" value="1"> - <input type="hidden" name="currency_code" value="USD"> - <input type="hidden" name="tax" value="0"> - <input type="image" src="/images/donation.gif" name="submit" - alt="Make a donation with PayPal"> - </form> +<form action="https://www.paypal.com/cgi-bin/webscr" method="post"> + <p> + <input type="hidden" name="cmd" value="_xclick"> + <input type="hidden" name="business" value="[email protected]"> + <input type="hidden" name="item_name" value="GL2PS donation"> + <input type="hidden" name="no_note" value="1"> + <input type="hidden" name="currency_code" value="EUR"> + <input type="hidden" name="tax" value="0"> + To help fund GL2PS development, you can make a + <input type="submit" value="PayPal" style="display:inline;"> + donation. + </p> +</form> <h2>Documentation</h2>} \tableofcontents @@ -902,7 +896,10 @@ % \noemail{Ben Abbott}{[email protected]} for text alignment in SVG; % -\noemail{David Lonie}{[email protected]} for VTK patches. +\noemail{David Lonie}{[email protected]} for VTK patches; +% +\noemail{Pantxo Diribarne}{[email protected]} for polygon offset +improvement and image scaling fix for SVG output. \section{Links} \label{sec:links} @@ -1050,8 +1047,8 @@ \item[1.3.7] (Sep 2, 2012) Minor documentation and build system fixes. \item[1.3.8] (Nov 27, 2012) Handling of arbitrary length messages in gl2psPrintf; added \dd{gl2psTextOptColor}; minor fixes. +\item[1.3.9] (Oct 17, 2015) Improved \dd{GL_POLYGON_OFFSET_FILL}; fixed scaling + of images in SVG output. \end{description} -\special{html:<p>Back to <a href="/">geuz.org</a>} - \end{document} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/gl2psTest.c new/gl2ps-1.3.9-source/gl2psTest.c --- old/gl2ps-1.3.8-source/gl2psTest.c 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/gl2psTest.c 2015-10-17 18:25:49.000000000 +0200 @@ -1,6 +1,6 @@ /* * GL2PS, an OpenGL to PostScript Printing Library - * Copyright (C) 1999-2012 Christophe Geuzaine <[email protected]> + * Copyright (C) 1999-2015 Christophe Geuzaine <[email protected]> * * This program is free software; you can redistribute it and/or * modify it under the terms of either: @@ -282,7 +282,7 @@ printstring(" b: to change the blending mode (transparency)", 0.); y -= dy; glRasterPos2d(x, y); - printstring(" q: to quit", 0.), 0.; + printstring(" q: to quit", 0.); y -= dy; glRasterPos2d(x, y); printstring("Click and move the mouse to rotate the objects", 0.); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gl2ps-1.3.8-source/gl2psTestSimple.c new/gl2ps-1.3.9-source/gl2psTestSimple.c --- old/gl2ps-1.3.8-source/gl2psTestSimple.c 2012-11-27 20:41:06.000000000 +0100 +++ new/gl2ps-1.3.9-source/gl2psTestSimple.c 2015-10-17 18:25:44.000000000 +0200 @@ -1,6 +1,6 @@ /* * GL2PS, an OpenGL to PostScript Printing Library - * Copyright (C) 1999-2012 Christophe Geuzaine <[email protected]> + * Copyright (C) 1999-2015 Christophe Geuzaine <[email protected]> * * This program is free software; you can redistribute it and/or * modify it under the terms of either: @@ -67,7 +67,42 @@ glDisable(GL_LIGHTING); glPopMatrix(); + + /* draw three triangles on the same zplane and use polygon offset + to order the layers: the grey triangle should be drawn on the + middle layer */ + glEnable(GL_POLYGON_OFFSET_FILL); + glPolygonOffset(1.0, 1.0); + gl2psEnable(GL2PS_POLYGON_OFFSET_FILL); + glColor3f(0.,0.,0.); + glBegin(GL_TRIANGLES); + glVertex3f(0.6, 0.8, 0); + glVertex3f(0.8, 0.8, 0); + glVertex3f(0.7, 0.92, 0); + glEnd(); + + glPolygonOffset(2.0, 2.0); + gl2psEnable(GL2PS_POLYGON_OFFSET_FILL); glColor3f(1.,1.,1.); + glBegin(GL_TRIANGLES); + glVertex3f(0.7, 0.8, 0); + glVertex3f(0.9, 0.8, 0); + glVertex3f(0.8, 0.92, 0); + glEnd(); + + glPolygonOffset(1.5, 1.5); + gl2psEnable(GL2PS_POLYGON_OFFSET_FILL); + glColor3f(0.5,0.5,0.5); + glBegin(GL_TRIANGLES); + glVertex3f(0.65, 0.86, 0); + glVertex3f(0.85, 0.86, 0); + glVertex3f(0.75, 0.98, 0); + glEnd(); + + glDisable(GL_POLYGON_OFFSET_FILL); + gl2psDisable(GL2PS_POLYGON_OFFSET_FILL); + + glColor3f(0.1,0.1,0.1); /* draw a stippled line with many small segments (this tests the ability of gl2ps to render lines using as few strokes as ++++++ no-copy-dt-needed-entries.patch ++++++ --- /var/tmp/diff_new_pack.FrFa5i/_old 2015-12-24 12:15:51.000000000 +0100 +++ /var/tmp/diff_new_pack.FrFa5i/_new 2015-12-24 12:15:51.000000000 +0100 @@ -1,8 +1,10 @@ ---- CMakeLists.txt.orig 2012-11-27 21:41:06.000000000 +0200 -+++ CMakeLists.txt 2013-03-26 20:51:25.311336670 +0200 -@@ -106,6 +106,11 @@ - endif(PNG_FOUND) - endif(ENABLE_PNG) +Index: CMakeLists.txt +=================================================================== +--- CMakeLists.txt.orig ++++ CMakeLists.txt +@@ -111,6 +111,11 @@ if(MATH_LIBRARY) + list(APPEND EXTERNAL_LIBRARIES ${MATH_LIBRARY}) + endif(MATH_LIBRARY) +find_library(MATH_LIBRARY m) +if(MATH_LIBRARY)
