Werner Almesberger
6fbdfd7120
cameo/area.c (touch): also consider whether we're looking for entry/exit
2012-03-18 20:15:50 -03:00
Werner Almesberger
b607816f95
cameo/area (hit_segment): only consider vectors pointing in the right direction
...
This way we avoid false positives, such as exit points while looking
for an entry.
2012-03-18 19:47:02 -03:00
Werner Almesberger
5a599e14f6
cameo: don't duplicate paths already cleared by the outline
...
Also pass information on whether we're about to enter or leave a
polygon.
2012-03-18 17:57:04 -03:00
Werner Almesberger
35c0624dc5
cameo: "area" now also adds the outline cuts
...
"offset" wasn't suitable for alternating inside and outside anyway.
2012-03-18 17:02:43 -03:00
Werner Almesberger
8c4dfc55b6
cameo/test/: test scenario for area fill
2012-03-18 13:19:13 -03:00
Werner Almesberger
2530a11c80
cameo: an attempt at area fill (WIP)
2012-03-18 13:16:26 -03:00
Werner Almesberger
6271d5f721
spool/: job spooler for CNC mill (migrated from Openmoko)
...
From
http://svn.openmoko.org/developers/werner/cncmap/spool/
Fixed a buffer termination bug that caused the mill to do strange
(yet almost always harmless) things at the end of a job.
2012-03-11 09:37:38 -03:00
Werner Almesberger
90254ef0bc
cameo: also connect paths from gnuplot files
...
We only did this for Gerber.
2011-12-16 04:36:17 -03:00
Werner Almesberger
7354edee2b
dxf2x/dxf2gp: simple DXF to Gnuplot converter
...
Mainly for the M1 case design:
http://projects.qi-hardware.com/index.php/p/m1/source/tree/master/cad/protocase_v7_laser.dxf
2011-12-15 16:24:14 -03:00
Werner Almesberger
639b0fa2d6
cameo/: make tool_comp_paths output paths in the order processed
2011-09-05 07:54:29 -03:00
Werner Almesberger
828763b747
cameo/path.c (path_replace): free the old ID
2011-09-05 06:20:12 -03:00
Werner Almesberger
a67d0b447e
cameo/shape.c: removed global "path" variable (where did that madness come from ?)
2011-09-05 05:49:23 -03:00
Werner Almesberger
a42a18fef3
cameo/: new gnuplot tag #%id= with generator-assigned identifier
...
Excellon and Gerber store the file name there.
2011-09-05 05:46:25 -03:00
Werner Almesberger
41bffa8f79
cameo/excellon.c: increased MAX_TOOL from 10 to 20
2011-09-01 12:03:32 -03:00
Werner Almesberger
98b0e961ae
mkmk-simple: exit with an error code if "gp2rml" fails
2011-09-01 12:02:37 -03:00
Werner Almesberger
5651a40230
mkmk-simple: new option CLEARANCE (default: 2mm)
2011-09-01 12:00:58 -03:00
Werner Almesberger
00166f3751
gp2rml/gp2rml.c: allow unit of Z clearance (mm) to be specified explictly
2011-09-01 12:00:22 -03:00
Werner Almesberger
50918a26fd
mkmk-simple: changed path to gp2rml from ...openmoko... to ...qi/cae-tools...
2011-09-01 03:38:27 -03:00
Werner Almesberger
fbbe451a2e
gp2rml/: copied over from svn.openmoko.org/developers/werner/cncmap/gp2rml
2011-09-01 02:25:11 -03:00
Werner Almesberger
afa7460b45
mkmk-simple: added variable ANY (usage: ANY=any) to set "mill any"
2011-08-31 21:32:29 -03:00
Werner Almesberger
75c3a7d1d2
cameo/: added option "any" to "mill", to accept paths irrespective of tool size
2011-08-31 21:32:29 -03:00
Werner Almesberger
54101eaaf4
mkmk-simple: exit with an error code if "cameo" fails
2011-08-31 21:32:29 -03:00
Werner Almesberger
639d9a21df
cngt/cngt.c: added small steps (default) and long steps (with shift)
2011-08-31 17:21:59 -03:00
Werner Almesberger
eb8964da6f
cngt/cngt.c: added positioning-only mode
...
Invoke with only the initial Z, without a height and without file or
reference points. E.g.,
cngt -60
2011-08-31 15:39:40 -03:00
Werner Almesberger
6795057567
cameo/templates/mkmk-simple: added optional BOARD_Z parameter for board thickness
2011-08-31 14:53:56 -03:00
Werner Almesberger
daa355461f
cngt/cngt.c (do_key): merge common x/y positioning code
2011-08-31 14:52:34 -03:00
Werner Almesberger
26a0f4cf2b
ptrude/: many major math fixes, especially in stretch_path
2011-07-31 19:17:05 -03:00
Werner Almesberger
ee634458dc
ptrude/: changed extrusion from xy path to xz path; variable number of faces
2011-07-31 09:57:51 -03:00
Werner Almesberger
7ef626988c
ptrude/: functions for path stretching and calculation of proportional length
2011-07-31 08:46:59 -03:00
Werner Almesberger
c202eda676
ptrude/: added (overly, this far) simple extruder
2011-07-29 14:32:40 -03:00
Werner Almesberger
3dcd5cc9aa
ptrude/: proper command-line handling; open -d for debug mode
2011-07-29 00:25:28 -03:00
Werner Almesberger
188cf9d9d4
ptrude/: more comments; copyright headers; improved Makefile
2011-07-28 23:20:18 -03:00
Werner Almesberger
dcb1c7856a
ptrude/: cleanup and addition of comments (WIP)
...
- arc.fig: corrected formula for 2t
- path.c (corner): cleanup and added comments
2011-07-28 22:52:42 -03:00
Werner Almesberger
d4c96f129d
ptrude/: path extrusion, work in progress
2011-07-28 22:31:25 -03:00
Werner Almesberger
4ae218c6dc
mkmk-simple: oops, should be executable
2011-02-15 02:10:44 -03:00
Werner Almesberger
b0eb0178ee
cameo/templates/mkmk-simple: template for milling simple boards
2011-02-15 02:06:26 -03:00
Werner Almesberger
0826d5b35e
cameo: allow comma between parameters of "drill" (makes use in scripts easier)
...
- lang.y: allow an optional comma between the parameters of "drill"
- README: explain the new syntax of "drill"
2011-02-15 02:06:10 -03:00
Werner Almesberger
dfc53c781a
cameo: new command "stats" to print path statistics
...
- README: documented the "stats" command
- lang.l, lang.y: added "stats" command
- path.h (path_stats), path.c (path_stats): calculate and print path
statistics
2011-02-13 02:25:32 -03:00
Werner Almesberger
6947b3a5d1
cameo: allow for rounding errors KiCad produces with a metric grid
...
- cameo/path.c (path_is_closed): use points_eq instead of open-coding the
comparison
- cameo//path.c (EPSILON_MM, points_eq): consider two points as equal if
their projections on the xy plane are less than EPSILON_MM apart and
their z positions don't differ by more than the same distance
2011-01-31 19:36:59 -03:00
Werner Almesberger
4b717cadc6
cameo/path.c (path_connect): corrected logic when merging B->A
2011-01-05 23:07:34 -03:00
Werner Almesberger
ee3a3e6162
cameo: array steps can now be specifed as item size plus border
...
- lang.y (align, bbox): moved bounding box calculation to separate
function (for sharing)
- lang.y: array sizes can specified as the size of the respective
dimension of the bounding box plus a border
- README: documented use of border size with "array"
2011-01-05 22:34:39 -03:00
Werner Almesberger
6f30bab648
cameo: added "rotate" command
...
- lang.l, lang.y (rotate): added command "rotate", with cumulative
rotation
- README: documented "rotate"
- README: corrected typo in description of the translation commands
2011-01-03 01:25:42 -03:00
Werner Almesberger
45ee739c3b
Removed drl2gp - it's been merged into cameo.
2011-01-02 21:55:53 -03:00
Werner Almesberger
57b4e276e5
cameo: added optimization of movements between tool paths
...
- ops.h, ops.c (optimize_paths): reorder toolpaths to reduce the distance
between them
- lang.l, lang.y: added command "optimize"
- README: documented "optimize"
2010-12-16 14:19:46 -03:00
Werner Almesberger
ffaded7f48
cngt: added support for setting default positions from toolpath file
...
- cngt.c (x, y, z, move, up, down, do_key, main): renamed "x", "y", "z" to
"cx", "cy", "cz", to avoid clash with common local "x", etc.
- cngt.c (gp_minmax, main): populate default positions with bounding box
of toolpath if given a file name instead of points
2010-12-16 04:47:00 -03:00
Werner Almesberger
ed6bbff7f8
cameo/ops.c (tool_comp_paths): inside/outside logic was reversed for outer path
2010-12-16 02:38:11 -03:00
Werner Almesberger
62152e2987
cngt: some small fixes
...
- Makefile: updated program name in title comment
- cngt.c (do_key): "l" moved left, like "h"
- cngt.c (main): when starting, immediately move to initial position
- getkey.c (tty_open): open /dev/tty read-only, not write-only
2010-12-15 22:40:43 -03:00
Werner Almesberger
154be2bada
cngt: tool change utility for MDX15/20 (in progress)
...
- Makefile: basic Makefile
- cngt.c: argument processing and main loop
- serial.h, serial.c: serial port output for MDX-15/20, from cncmap/millp/
- getkey.h, getkey.c: single-key (raw) TTY input
2010-12-15 20:47:58 -03:00
Werner Almesberger
99592248d9
cameo/gerber.c (gerber_read): store coordinates as floats after conversion
...
They all were truncated.
2010-12-15 12:26:44 -03:00
Werner Almesberger
7cb25c5a3f
cameo: apply translation after loading a file only to the new file
...
- lang.y (translate): list of paths is now an argument (instead of always
using the global path list)
- lang.y: on "gerber", "gnuplot", and "excellon", only translate the new
paths
2010-12-15 06:37:17 -03:00