Commit graph

30 commits

Author SHA1 Message Date
Hamilton Kibbe
422c86bcc6 Merge upstream changes 2016-11-06 14:44:40 -05:00
Hamilton Kibbe
724c2b3bce Finish Merge, most tests passing 2016-11-05 20:56:47 -04:00
Hamilton Kibbe
5af19af190 Commit partial merge so I can work on the plane 2016-09-24 02:28:36 +08:00
Garret Fick
8d5e782ccf Fix multiple problems with the merge. There are still errors, but I will intentionally leave them because future merges might resolve them 2016-08-06 09:51:58 +08:00
Hamilton Kibbe
8cd842a41a Manually mere rendering changes 2016-08-06 09:40:40 +08:00
Garret Fick
0107d159b5 Fix crash with polygon aperture macros 2016-07-02 12:34:35 +08:00
Garret Fick
14747494b8 Rotate vector line 2016-06-30 23:08:51 +08:00
Garret Fick
efb3703df4 Fix rotation of center line 2016-06-30 22:46:20 +08:00
Garret Fick
b140f5e476 Don't flash G03-only commands 2016-06-28 23:15:20 +08:00
Garret Fick
ccb6eb7a76 Add support for polygon apertures 2016-06-25 16:46:44 +08:00
Garret Fick
efcb221fc7 Missing * in writing aperture macro 2016-06-25 16:00:46 +08:00
Garret Fick
b01c4822b6 Render aperture macros with clear regions 2016-06-25 12:27:28 +08:00
Garret Fick
3fc296918e Use the known macro statement to render. Fix thermal not setting rotation 2016-05-28 13:06:08 +08:00
Garret Fick
7f47aea332 Write polygons to macros 2016-03-05 10:04:58 +08:00
Garret Fick
20a9af279a More rendering of AMGroup to statements 2016-03-01 00:06:14 +08:00
Garret Fick
223a010831 Fix critical issue with rotatin points (when the angle is zero the y would be flipped). Render AM with outline to gerber 2016-02-27 18:18:04 +08:00
Garret Fick
5b93db47cd Draw thermal aperture macros (as approximation) 2016-02-02 00:11:55 +08:00
Paulo Henrique Silva
1d9270d809 Fix NameError on Polygon primitive rendering 2016-01-22 03:24:50 -02:00
Hamilton Kibbe
5476da8aa3 Fix a bunch of rendering bugs.
- 'clear' polarity primitives no longer erase background
  - Added aperture macro support for polygons
  - Added aperture macro rendring support
  - Renderer now creates a new surface for each layer and merges them instead of working
    directly on a single surface
  - Updated examples accordingly
2016-01-21 03:57:44 -05:00
Garret Fick
6a99359413 Fix converting polygons to outlines for macros 2016-01-16 12:28:46 +08:00
Garret Fick
f61eee807f Render polygon flashes 2015-12-30 18:44:07 +08:00
Garret Fick
96692b2221 Render primitives for some aperture macros 2015-12-30 15:32:44 +08:00
Garret Fick
4a815bf25d First time any macro renders 2015-12-30 14:05:00 +08:00
Paulo Henrique Silva
a13b981c1c Fix tests for macros with no variables.
All AM*Primitive classes now handles float for all but the code
modifiers. This simplifies the reading/parsing.
2015-03-05 14:43:30 -03:00
Paulo Henrique Silva
670d3fbbd7 Add aperture macro parsing and evaluation.
Aperture macros can get complex with arithmetical operations,
variables and variables substitution.

Current pcb-tools code just read each macro block as an independent
unit, this cannot deal with variables that get changed after used.

This patch splits the task in two: first we parse all macro content
and creates a bytecode representation of all operations. This bytecode
representation will be executed when an AD command is issues passing
the required parameters.

Parsing is heavily based on gerbv using a Shunting Yard approach to
math parsing.

Integration with rs274x.py code is not finished as I need to figure out
how to integrate the final macro primitives with the graphical primitives
already in use.
2015-03-03 03:41:55 -03:00
Hamilton Kibbe
288ac27084 Get unit conversion working for Gerber/Excellon files
Started operations module for file operations/transforms
2015-02-18 04:31:23 -05:00
Hamilton Kibbe
41f9475b13 Tests and bugfixes 2015-02-09 17:39:24 -05:00
Hamilton Kibbe
b0c55082b0 Add aperture macro statement tests 2015-02-09 13:57:15 -05:00
Hamilton Kibbe
3435fecd3b Add rest of Aperture Macro Primitives 2015-02-08 21:52:09 -05:00
Hamilton Kibbe
f98b918634 Added some Aperture Macro Primitives. Moved AM primitives to seperate file 2015-02-02 20:03:26 -05:00