1
0
mirror of git://projects.qi-hardware.com/eda-tools.git synced 2024-11-30 10:45:53 +02:00
Commit Graph

147 Commits

Author SHA1 Message Date
Werner Almesberger
66ca318dbe sch2fig/sch.c: separate parsing from rendering 2016-07-31 01:48:31 -03:00
Werner Almesberger
50242899d3 sch2fig/: add Cairo (PNG) back-end (WIP) 2016-07-31 00:04:43 -03:00
Werner Almesberger
4e8870d193 sch2fig/: make gfx_ops->line optional; add COLOR_WHITE; add color map 2016-07-30 23:43:49 -03:00
Werner Almesberger
d1657de267 sch2fig/gfx.h (gfx_end), gfx.c: add optional termination function 2016-07-30 23:02:15 -03:00
Werner Almesberger
3b18e8b604 sch2fig/: make *_line accept color and layer from dwg 2016-07-30 21:55:23 -03:00
Werner Almesberger
4267efae0d sch2fig/: abstract graphical output interface 2016-07-30 21:50:02 -03:00
Werner Almesberger
b933c9976f sch2fig/fig.h (enum fig_shape): move to dwg.h and rename 2016-07-30 21:33:36 -03:00
Werner Almesberger
3ca2130db5 sch2fig/: implement fig_wire and fig_bus as dwg_* using fig_poly 2016-07-30 21:21:45 -03:00
Werner Almesberger
402e14d78f sch2fig/: support busses and entries 2016-07-30 21:07:36 -03:00
Werner Almesberger
97a1d46659 sch2fig/test.sch: complete set of bus and wire connections 2016-07-30 21:07:03 -03:00
Werner Almesberger
1f257bdc8a sch2fig/TODO: update 2016-07-30 20:44:40 -03:00
Werner Almesberger
9a3c8e5f0a sch2fig/neo900-template.fig: add copyright notice; grow number; move name a bit 2016-07-29 23:29:55 -03:00
Werner Almesberger
9ac486aef8 sch2fig/sch2pdf: add missing backtick; count properly 2016-07-29 23:29:17 -03:00
Werner Almesberger
7caf1fb84a sch2fig/: text can contain newlines (as '\' 'n'), support them 2016-07-29 22:45:56 -03:00
Werner Almesberger
4427d092ef sch2fig/Makefile (CFLAGS), sch.c: add -O; suppress asprintf warning 2016-07-29 22:17:06 -03:00
Werner Almesberger
b8ec957471 sch2fig/ (rx, ry): consolidate into misc.c (integer version) 2016-07-29 22:13:07 -03:00
Werner Almesberger
626cae2210 sch2fig/genpng: start with the first/index sheet 2016-07-29 22:04:39 -03:00
Werner Almesberger
fa8f76eb12 sch2fig/sch2pdf, Makefile: also process the first page 2016-07-29 22:00:57 -03:00
Werner Almesberger
0dfd3ff7e2 sch2fig/: support sheet and file labels in sheet as well 2016-07-29 21:43:27 -03:00
Werner Almesberger
2e68f85914 sch2fig/: support subsheet box and exported labels (WIP) 2016-07-29 20:48:06 -03:00
Werner Almesberger
8721964568 sch2fig/dwg.c (rx, ry): avoid floating-point errors
Even small errors (i.e., one unit), can cause very visible changes in the
graphical output. Perhaps fig2dev is over-reacting at times.
2016-07-29 19:34:59 -03:00
Werner Almesberger
d63d183198 sch2fig/: support hierarchical labels (with new geometry approach) 2016-07-29 19:30:32 -03:00
Werner Almesberger
ab59b4f952 sch2fig/fig.c: more high-level drawing (labels, etc.) functions to dwg.c 2016-07-28 23:09:38 -03:00
Werner Almesberger
8830b9a223 sch2fig/lib.c (draw_text): also support mirroring
test.sch now renders correctly.
2016-07-28 15:49:14 -03:00
Werner Almesberger
7efb3e7e7e sch2fig/lib.c (draw_text): flipping affects both alignments 2016-07-28 15:42:03 -03:00
Werner Almesberger
538f362b0a sch2fig/lib.c (draw_arc): handle mirroring 2016-07-28 15:25:00 -03:00
Werner Almesberger
ff12e388e2 sch2fig/lib.c (draw_pin_num): correct pin number flipping 2016-07-26 20:56:43 -03:00
Werner Almesberger
e5ba111258 sch2fig/Makefile (test): one negation too many 2016-07-26 20:40:39 -03:00
Werner Almesberger
58cd498ded sch2fig/lib.c (draw_text): support horizontal and vertical alignment 2016-07-26 20:39:08 -03:00
Werner Almesberger
76013a5b04 sch2fig/sch.c, sch.h (decode_alignment): prepare for future sharing with lib.c 2016-07-26 20:34:54 -03:00
Werner Almesberger
fb19aeae0a sch2fig/Makefile: add regression testing based on test.fig 2016-07-26 20:27:12 -03:00
Werner Almesberger
3c73ad6521 sch2fig/test.sch: s/Text, Left, Normal, 100 mil/Text, Left, Bold, 100 mil/ 2016-07-26 18:37:35 -03:00
Werner Almesberger
8db4055882 sch2fig/sch.c (draw_text, sch_parse): support text left, down; ignore busses 2016-07-26 18:36:46 -03:00
Werner Almesberger
f9140bc53f sch2fig/misc.c (matrix_to_angle, matrix_is_mirrored): 1 0 0 1 and 0 1 -1 0
Tentative support. Untested.
2016-07-26 18:35:51 -03:00
Werner Almesberger
47707d700c sch2fig/lib.c (lib_parse): zero2 seems to be text style, ignore 2016-07-26 18:35:14 -03:00
Werner Almesberger
4d75a7f00e sch2fig/Makefile (neo900.pdf): first sheet is #2 2016-07-26 18:10:43 -03:00
Werner Almesberger
e4f3d4944f sch2fig/neo900-template.fig: show BIG sheet number 2016-07-26 18:10:18 -03:00
Werner Almesberger
22bdd42188 sch2fig/sch2pdf: pass sheet number in <NUMBER>; option -n num to set start 2016-07-26 18:09:28 -03:00
Werner Almesberger
8903dd8db7 sch2fig/lib.c (draw_text): support component text orientation other than 0 deg
This is for plain text. Pins and fields already supported rotation before.
2016-07-26 17:48:09 -03:00
Werner Almesberger
0ddd4dbbb3 sch2fig/lib.c (lib_parse): replace all ~ in unquoted strings with spaces 2016-07-26 17:38:12 -03:00
Werner Almesberger
252e92fe64 sch2fig/fig.c (fig_label): offset was reversed for "up" 2016-07-26 14:05:25 -03:00
Werner Almesberger
629412e25c sch2fig/Makefile (diff): ensure that we build sch2fig 2016-07-26 13:59:14 -03:00
Werner Almesberger
c3f73d8335 sch2fig/lib.c (draw_pin_name): flip pin names rotated by 270 degrees 2016-07-26 13:58:33 -03:00
Werner Almesberger
a36ec41dc6 sch2fig/lib.c (draw_pin_name, draw_pin_num), TODO: support "outside" pin names
There's still a rotation bug affecting this, but this existed before.
2016-07-26 13:45:19 -03:00
Werner Almesberger
4c3a3a1f84 sch2fig/Makefile (diff, view, newref): add regression test operations 2016-07-26 13:13:29 -03:00
Werner Almesberger
2cea73d040 sch2fig/test/comp: add optional directory argument 2016-07-26 13:13:29 -03:00
Werner Almesberger
93ba849a19 sch2fig/lib.c (draw_pin): split off pin name and number output
Function got a bit "heavy" ...
2016-07-26 13:13:29 -03:00
Werner Almesberger
f9c32d4e1e sch2fig/lib.c (lib_exec): component can have unit number 0, which means 1
This happened with XTAL-4-3225 in neo900.lib as the result of merging
multiple units into one component.
2016-07-26 08:42:38 -03:00
Werner Almesberger
ab612b4eb2 sch2fig/test/: tools for comparison with reference results 2016-07-26 08:28:39 -03:00
Werner Almesberger
c2e1d60e2e sch2fig/: add unit letter(s) to component reference of multi-unit components 2016-07-26 08:24:36 -03:00
Werner Almesberger
f3abf8f622 sch2fig/TODO: remove solved issues 2016-07-26 03:22:41 -03:00
Werner Almesberger
279c1ddff3 sch2fig/sch2pdf: add copyright header, known bugs 2016-07-26 03:21:29 -03:00
Werner Almesberger
6767c878b6 sch2fig/lib.c (draw_pin): remove unused "vert" 2016-07-26 03:17:58 -03:00
Werner Almesberger
67e9de8683 sch2fig/neo900-template.fig: add <TITLE> 2016-07-26 03:16:43 -03:00
Werner Almesberger
466e3ae726 sch2fig/sch2pdf: extract sheet title and pass in variable TITLE 2016-07-26 03:16:09 -03:00
Werner Almesberger
2c9c526255 sch2fig/: new option -Dvar=value to set <var> in template 2016-07-26 03:15:13 -03:00
Werner Almesberger
1d059abcb4 sch2fig/Makefile, neo900-template.fig: use template for constant frame size 2016-07-26 02:34:56 -03:00
Werner Almesberger
83be43d222 sch2fig/sch2pdf: use correct output file name; pass on -t template.fig 2016-07-26 02:32:53 -03:00
Werner Almesberger
09d436175a sch2fig/: new option -t template.fig to merge template file 2016-07-26 02:30:58 -03:00
Werner Almesberger
427e4d7d09 sch2fig/sch2pdf, Makefile (neo900.pdf): generate PDF for Neo900 2016-07-25 17:42:50 -03:00
Werner Almesberger
d031e59811 sch2fig/sch.c (draw_text): convert to use text_*; support direction 1 (up) 2016-07-25 15:20:26 -03:00
Werner Almesberger
3433068d71 sch2fig/sch.c (sch_parse): ignore AR element (what is this ?) 2016-07-25 15:04:39 -03:00
Werner Almesberger
3588992947 sch2fig/: support mirrored symbols (matrix -1 0 0 -1) 2016-07-25 14:59:27 -03:00
Werner Almesberger
ed02cafaf5 sch2fig/sch.c (dump_fields): break into two functions; make more "const"
"const" may come in handy at a later stage, when we want to keep things
around for a bit longer.
2016-07-25 14:43:59 -03:00
Werner Almesberger
1e36f32c0f sch2fig/fig.c (fig_glabel): support direction 3 (down) 2016-07-25 14:09:58 -03:00
Werner Almesberger
09bd2ca38d sch2fig/fig.c (fig_label): initialize dx, dy 2016-07-25 14:06:48 -03:00
Werner Almesberger
dd5f9d2128 sch2fig/: properly interpret KiCad arcs
They can be clockwise or counter-clockwise, but are always < 180 degrees.
2016-07-25 13:38:58 -03:00
Werner Almesberger
b44293c4d6 sch2fig/TODO: add some more items 2016-07-25 13:38:41 -03:00
Werner Almesberger
340973acff sch2fig/TODO: to do list 2016-07-25 12:04:25 -03:00
Werner Almesberger
a28c5ebdc2 sch2fig/Makefile (test, neo900): use test.sch; separate target for Neo900 2016-07-25 11:34:58 -03:00
Werner Almesberger
7a0adf8520 sch2fig/style.h: make fields and pin names darker (Cyan3 -> Cyan4) 2016-07-25 11:33:06 -03:00
Werner Almesberger
b903f53c3f sch2fig/: support arcs 2016-07-25 02:59:33 -03:00
Werner Almesberger
e37765fd12 sch2fig/fig.c (fig_label): support orientation 1 (up) 2016-07-25 02:02:42 -03:00
Werner Almesberger
fe15498ef1 sch2fig/fig.c (fig_label): support direction 3 (down) 2016-07-25 01:57:47 -03:00
Werner Almesberger
a0c4aedd32 sch2fig/fig.c (fig_glabel): support orientation 1 (up) 2016-07-25 01:50:07 -03:00
Werner Almesberger
707c8f790d sch2fig/lib.c: text in symbols stays upright 2016-07-25 01:14:28 -03:00
Werner Almesberger
b0b8f058c5 sch2fig/style.h (JUNCTION_R): reduce from 40 to 30 mil, to approximate circles
A circle surrounding a junction would assume a junction radius of about 20-25
mil. With 30, we make it just small enough that the circle is visible.
2016-07-25 00:51:03 -03:00
Werner Almesberger
c979bf0989 sch2fig/: support circles 2016-07-25 00:50:48 -03:00
Werner Almesberger
9618846d46 sch2fig/: support 180 deg rotation of components 2016-07-25 00:39:03 -03:00
Werner Almesberger
817befc29f sch2fig/: add partial support for (local) labels 2016-07-25 00:16:09 -03:00
Werner Almesberger
6f7463c299 sch2fig/: display pin numbers 2016-07-24 23:26:54 -03:00
Werner Almesberger
d6b73479ad sch2fig/: add filling of boxes and polygons 2016-07-24 22:57:52 -03:00
Werner Almesberger
1aaf1f8fb2 sch2fig/fig.c: make glabels work when rotated by 180 degrees 2016-07-24 22:30:38 -03:00
Werner Almesberger
e3a0229946 sch2fig/Makefile, lib.c: make -Wshadow-clean 2016-07-24 01:05:41 -03:00
Werner Almesberger
8ad734ff39 sch2fig/: better error reporting; add features of Neo900 sheet 2 2016-07-24 01:03:23 -03:00
Werner Almesberger
9f8a09b2d5 sch2fig/: fix pin name offsets 2016-07-23 23:20:53 -03:00
Werner Almesberger
97f8969716 sch2fig/: sheet 1 almost works (A and especially K are off) 2016-07-23 23:12:56 -03:00
Werner Almesberger
07433fd295 sch2fig/: pin names and fields (WIP) 2016-07-23 22:52:15 -03:00
Werner Almesberger
1bab610e9e sch2fig/: slight cleanup 2016-07-23 15:07:50 -03:00
Werner Almesberger
da22f1cc57 sch2fig/: basic field support 2016-07-23 14:59:37 -03:00
Werner Almesberger
6e6e68e445 sch2fig/: partial glabel support; ongoing development 2016-07-23 06:58:46 -03:00
Werner Almesberger
d0bff77b9c sch2fig/: add test schematic sheet 2016-07-23 06:36:56 -03:00
Werner Almesberger
cd3ced9cfb sch2fig/: restructure text handing; on-going development 2016-07-23 00:48:59 -03:00
Werner Almesberger
09ae0229c3 sch2fig/main.c (read_file): be civil and report errors 2016-07-22 00:19:19 -03:00
Werner Almesberger
adf9efdd95 sch2fig/Makefile (test): include powered.lib; fix invocation 2016-07-22 00:16:14 -03:00
Werner Almesberger
addb15ce94 sch2fig/: add copyright headers; use "local" Makefile.c-common 2016-07-22 00:06:34 -03:00
Werner Almesberger
1cff10b824 sch2fig/: eeschema to FIG converter (WIP) 2016-07-21 23:54:32 -03:00