Send commitlog mailing list submissions to
        commitlog@lists.openmoko.org

To subscribe or unsubscribe via the World Wide Web, visit
        http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
        commitlog-requ...@lists.openmoko.org

You can reach the person managing the list at
        commitlog-ow...@lists.openmoko.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:

   1. r5851 - trunk/eda/fped (wer...@docs.openmoko.org)
--- Begin Message ---
Author: werner
Date: 2010-02-23 02:02:19 +0100 (Tue, 23 Feb 2010)
New Revision: 5851

Modified:
   trunk/eda/fped/Makefile
   trunk/eda/fped/postscript.c
Log:
Full-page postscript now includes all packages (not just the first one).
Measurement lines now have a fixed size, so they can't scale to invisibility.

- Makefile: don't pass CFLAGS twice when making dependencies
- postscript.c (postscript): moved iteration over packages to new function
  ps_for_all_pkg, for sharing with postscript_fullpage
- postscript.c (postscript_fullpage): print all packages
- postscript.c (ps_meas): use real size for measurement lines
- postscript.c (PS_MEAS_LINE): changed measurement line width from 0.015 scaled
  mm to 0.1 real mm



Modified: trunk/eda/fped/Makefile
===================================================================
--- trunk/eda/fped/Makefile     2010-02-20 05:10:24 UTC (rev 5850)
+++ trunk/eda/fped/Makefile     2010-02-23 01:02:19 UTC (rev 5851)
@@ -91,7 +91,7 @@
 
 %.o:           %.c
                $(CC) -c $(CFLAGS) $*.c -o $*.o
-               $(DEPEND) $(CFLAGS) $*.c | \
+               $(DEPEND) $*.c | \
                  sed -e \
                    '/^\(.*:\)\? */{p;s///;s/ *\\\?$$/ /;s/  */:\n/g;H;}' \
                    -e '$${g;p;}' -e d >$*.d; \

Modified: trunk/eda/fped/postscript.c
===================================================================
--- trunk/eda/fped/postscript.c 2010-02-20 05:10:24 UTC (rev 5850)
+++ trunk/eda/fped/postscript.c 2010-02-23 01:02:19 UTC (rev 5851)
@@ -72,7 +72,7 @@
 #define        PS_VEC_TEXT_HEIGHT      mm_to_units(3)          /* ~8.5 pt, 
real mm */
 #define        PS_VEC_BASE_OFFSET      mm_to_units(0.5)        /* real mm */
 
-#define        PS_MEAS_LINE            mm_to_units(0.015)
+#define        PS_MEAS_LINE            mm_to_units(0.1)        /* real mm */
 #define        PS_MEAS_ARROW_LEN       mm_to_units(0.15)
 #define        PS_MEAS_ARROW_ANGLE     30
 #define        PS_MEAS_TEXT_HEIGHT     mm_to_units(3)          /* ~8.5 pt, 
real mm */
@@ -386,7 +386,8 @@
        a0 = inst->base;
        b0 = inst->u.meas.end;
        project_meas(inst, &a1, &b1);
-       fprintf(file, "1 setlinecap 0 setgray %d setlinewidth\n", PS_MEAS_LINE);
+       fprintf(file, "1 setlinecap 0 setgray %d realsize setlinewidth\n",
+           PS_MEAS_LINE);
        fprintf(file, "  %d %d moveto\n", a0.x, a0.y);
        fprintf(file, "  %d %d lineto\n", a1.x, a1.y);
        fprintf(file, "  %d %d lineto\n", b1.x, b1.y);
@@ -1004,7 +1005,8 @@
 }
 
 
-int postscript(FILE *file)
+static int ps_for_all_pkg(FILE *file,
+    void (*fn)(FILE *file, const struct pkg *pkg, int page))
 {
        struct pkg *pkg;
        int pages;
@@ -1016,7 +1018,7 @@
        pages = 0;
        for (pkg = pkgs; pkg; pkg = pkg->next)
                if (pkg->name)
-                       ps_package(file, pkg, ++pages);
+                       fn(file, pkg, ++pages);
        epilogue(file);
 
        fflush(file);
@@ -1024,18 +1026,23 @@
 }
 
 
+int postscript(FILE *file)
+{
+       return ps_for_all_pkg(file, ps_package);
+}
+
+
 /*
  * Experimental. Doesn't work properly.
  */
 
-int postscript_fullpage(FILE *file)
+static void ps_package_fullpage(FILE *file, const struct pkg *pkg, int page)
 {
        unit_type cx, cy;
        struct bbox bbox;
        double fx, fy, f;
 
-       prologue(file, 1);
-       ps_page(file, 1, pkgs);
+       ps_page(file, page, pkg);
        active_params = postscript_params;
        bbox = inst_get_bbox();
        cx = (bbox.min.x+bbox.max.x)/2;
@@ -1044,9 +1051,12 @@
        fy = 2.0*PAGE_HALF_HEIGHT/(bbox.max.y-bbox.min.y);
        f = fx < fy ? fx : fy;
        fprintf(file, "%d %d translate\n", (int) (-cx*f), (int) (-cy*f));
-       ps_draw_package(file, pkgs->next, f);
+       ps_draw_package(file, pkg, f);
        fprintf(file, "showpage\n");
-       epilogue(file);
-       fflush(file);
-       return !ferror(file);
 }
+
+
+int postscript_fullpage(FILE *file)
+{
+       return ps_for_all_pkg(file, ps_package_fullpage);
+}




--- End Message ---
_______________________________________________
commitlog mailing list
commitlog@lists.openmoko.org
http://lists.openmoko.org/mailman/listinfo/commitlog

Reply via email to