Ian McInerney
ecd9bf696e
Be consistent about using nullptr instead of 0
...
0 can be too easily overloaded into an int, so ensure we use nullptr
when we mean pointers.
2021-04-22 22:20:34 +01:00
jean-pierre charras
c1197903e4
Gerbview: fix regression: missing DCode highlight commands.
...
DCode selected by context menu or from toolbar is now highlighted.
2021-03-13 18:45:33 +01:00
Jon Evans
ff4c01c4a4
Don't say a gerber is an X2 unless the whole attribute is loaded
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/7303
2021-01-27 17:17:44 -05:00
Marek Roszko
e928b2d8fd
Split EDA_UNITS out from common.
2020-10-25 00:02:52 -04:00
Marek Roszko
a1c75748a0
Remove GetChars(), a wxWidgets 2.9 compatibility hack
2020-10-15 20:53:25 -04:00
jean-pierre charras
04aa5519d0
Gerbview: code cleanup. Remove many include, now useless.
2020-09-30 12:56:55 +02:00
Ian McInerney
70a7d1bc7c
Cleanup variable usage and assignment in gerber reader
2020-09-21 12:19:49 +01:00
Ian McInerney
7dfbb3cb18
Cleanup formatting
2020-09-21 12:15:03 +01:00
Ian McInerney
99dcadf7e6
Introduce new KI_FALLTHROUGH macro
...
Annotate purposeful fallthroughs in switch statements with the
KI_FALLTHROUGH macro.
2020-04-25 00:44:09 +01:00
jean-pierre charras
9e656fe5eb
Gerbview: fix incorrect rendering of oval vertical standard aperture with hole.
...
Fix also incorrect display of dcode size in toolbal: was Y size X size.
Now is X size Y size, as expected.
2020-04-10 16:02:15 +02:00
jean-pierre charras
7206b567ac
Gerbview: Gerber attributes display: fix incorrect attributes deletion.
...
The Gerber attribute deletion command (%TD,xxx) always cleared all attributes,
instead of clearing xxx attribute.
Therefore some attributes were not always displayed.
2020-02-23 09:42:02 +01:00
Ian McInerney
13b6028e1b
Refactor all math into a new kimath library
...
* Split up the thirdparty code into the thirdparty folder (#3637 )
* Create a new kimath static library containing all the math functions
This is part of cleaning the build system for #1906 .
2020-01-07 17:12:59 +00:00
jean-pierre charras
71cd8c57bf
ADDED: Pcbnew, add "pin function" (pin name in eeschema) to pads.
...
The pin name defined in Eeschema is now available as pad info.
Useful for the board designer (the pin function is displayed in the message panel).
Needed for the Gerber P&P files.
2019-11-23 09:12:43 +01:00
jean-pierre charras
32043cfa26
Gerbview: add parsing of optional Aperture Macro parameter.
...
AMP_CIRCLE primitive has 4 or 5 parameters (last is optional)
Reading the optional parameter was missing.
Fixes: lp:1852924
https://bugs.launchpad.net/kicad/+bug/1852924
2019-11-18 09:06:43 +01:00
jean-pierre charras
4a0bd46ed6
More work on Gerber pick and place files
...
In P&P files, user strings are now quoted, and use UTF8 encoding
2019-11-01 08:34:24 +01:00
Jeff Young
a25368cc6b
Improve spelling.
...
The groundwork here is thanks to kunda1.
Fixes: lp:1831510
* https://bugs.launchpad.net/kicad/+bug/1831510
2019-08-20 19:14:05 +01:00
jean-pierre charras
4136aca221
Gerbview: Excellon drill files reader: add a better support of routing mode.
...
Previously, the M and G00, G01, G02 and G03 commands were read, but nothing was actually done.
The current support is a bit rough, but it allows reading some drill files with routing commands.
2018-09-24 13:12:47 +02:00
jean-pierre charras
ef38a198d1
GerbView: incorrect handling of polygon primitive: broken parameters rotation and drill size.
...
Fixes: lp:1778459
https://bugs.launchpad.net/kicad/+bug/1778459
2018-06-25 11:00:53 +02:00
jean-pierre charras
d8687e4eaf
Gerbview: minor code cleanup
2018-05-14 09:05:11 +02:00
jean-pierre charras
8da242c593
Gerbview: accept any structured comment as X2 attribute.
...
A structured comment is a comment line starting by "G04 #@! " and in fact containing
a X2 attribute. It is used to create Gerber files contianing X2 metadata, but compatible
with X1 file format
2018-05-14 09:05:09 +02:00
jean-pierre charras
fa41026f36
Fix issue in aperture macro with some strange gerber files.
...
Fixes: lp:1755623
https://bugs.launchpad.net/kicad/+bug/1755623
2018-03-14 14:55:51 +01:00
jean-pierre charras
66d5d10b49
Gerbview: bigger line buffer to read some gerber files that have only one (very long) line.
...
small code refactor.
2018-03-14 10:42:18 +01:00
jean-pierre charras
a0ac1a48c2
Gerbview: fix code after renaming files
2018-01-29 13:26:58 +01:00
jean-pierre charras
cffe1b51e2
Gerbview: avoid a crash with malformed Gerber files.
...
Fix also incorrect handling of %LN (Load Name) deprecated command
2017-10-24 18:09:33 +02:00
Seth Hillbrand
5b2248fad8
gerbview: Corrects handling of %FSD statement
2017-09-29 07:40:58 +02:00
Jon Evans
915e51e1f0
GerbView GAL support part 1: changes to existing files
...
- New GAL draw layers for GerbView
- Improved bounding boxes for Gerber shapes
- Switched to use of SHAPE_POLY_SET for polygons
- Add GAL methods to support selection and rendering
- Add GUI support of editing GAL options
- Rename get/setActiveLayer to Get/SetActiveLayer to match convention
2017-09-25 13:35:01 +02:00
jean-pierre charras
b0bfbd4f41
Gerbview: remove analysis of fully outdated (and never used) gerber commands
2017-08-11 11:21:33 +02:00
jean-pierre charras
996bcdf458
Fix a few doxygen warnings
2017-06-16 09:18:31 +02:00
jean-pierre charras
36255d8523
Gerbview: Fix a few issues in aperture macro definitions.
2017-04-08 15:35:11 +02:00
jean-pierre charras
ba517db96c
Gerbview: fix a subtle issue when reading parameter values in Gerber files.
...
In Gerber files the char 'X' is used as separator.
But when reading parameter values, the sequence "0xnnn" is a number in hexadecimal format, and the 'X' char is not seen as separator by usual strtod or strtol C functions.
This is now fixed.
2017-04-08 12:53:40 +02:00
Simon Richter
bfb6e0bbb2
Convert remaining occurences of stri[n]cmp to str[n]casecmp.
...
This also reverses the substitution logic if strcasecmp is missing (config.h.cmake)
2016-08-16 10:27:09 +02:00
jean-pierre charras
f1226afc89
Gerbview: support of %TA.AperFunction (aperture attribute) and better support of %TO (currently work in progress) object attribute.
2016-08-16 12:56:20 +02:00
Chris Pavlina
e5a5f9552b
Fix RS274X Unicode decoding
2016-08-08 13:21:27 -04:00
jean-pierre charras
984146c37d
Gerbview: better support of advanced X2 attributes.
2016-08-01 19:47:35 +02:00
jean-pierre charras
ff246f6365
Gerbview: Add %TO (Netlist attribute) support in X2 format. Fix a bug in a not previously very used method.
2016-07-27 15:27:19 +02:00
jean-pierre charras
f311230874
Gerbview: when running gerbview from a command line, if a filename is given, and if it is a .drl file, it is loaded as drill file (instead of a gerber file, which generate an error message).
...
Code refactor: remove useless class members, and move read gerber file and read excellon file from gerbview frame to the corresponding classes
2016-06-05 14:26:39 +02:00
jean-pierre charras
130c6e3639
Gerbview: more code refactoring.
2016-05-26 13:57:43 +02:00
jean-pierre charras
8c8a1238f1
Gerbview: more code cleanup. Rename class GERBER_IMAGE GERBER_FILE_IMAGE, because it handles the gerber image and the gerber file info.
2016-05-25 16:48:38 +02:00
jean-pierre charras
1c21410f1f
Gerbview: code cleanup (with the help of Mark Roszko's work)
2016-05-25 11:45:55 +02:00
jean-pierre charras
63decd70e6
Minor fixes: Fix a few shadowed local variables, and deprecated warnings is a few dialogs generated by wxFormbuilder (using a very recent wxFormbuilder version, after apr 25, 2016)
2016-05-06 17:15:30 +02:00
Simon Wells
f88140c95d
Fixed RS274X image rotation parsing.
...
If the image was being rotated by a valid amount but not 270 degrees due to the if statements it would already report that there was an invalid value.
Also due to the strnicmp only checking the first 2 characters which was valid for 0* but not the rest of the numbers, some values would be able to work that shouldn't
2015-09-09 00:21:31 +12:00
jean-pierre charras
bb3dc5771c
Pcbnew: Fpid parser: Fix crash when reading a .kicad_pcb file containing a valid fpid with a revision value.
...
Fix an issue when a .kicad_pcb file contains an incorrect fpid ( containing a '/ ' in footprint section ) . After saving the board the file was no more readable, due to a broken fpid saved in file
(can happens in old .kicad_pcb files, coming from the bzr 4022 stable version, and/or in files converted from an other EDA tool like altium)
Fix 2 very minor coverity warnings.
2015-08-23 14:35:49 +02:00
unknown
2330b13864
Fix coverity reported strcat/strcpy potential overflows
2015-08-10 10:17:22 +02:00
jean-pierre charras
555ce68efe
Gerbview: Add support for recent File Format Attribute metadata, both for X2 Gerber file format and X1 (R274X) format.
...
Pcbnew already uses this attribute when creating Gerber files.
Because Gerber files using this attribute identify the board layers stackup, Gerbview (if this attribute is defined) can sort gerber images stach up like the board.
(in layer manager, just right click to access to the sort menu)
2014-11-22 12:52:57 +01:00
Wayne Stambaugh
40779a08ce
More missing source license fixes.
2014-10-21 14:36:45 -04:00
jean-pierre charras
49884da3e6
Gerber files generation: fix a rounding issue when drawing circles. (explains bug Bug #1339086 ).
...
Gerbview: allows x.7 format (recently indroduced in Gerber format)
Also minor coding style fixes.
2014-07-09 18:31:39 +02:00
jean-pierre charras
013296cb1a
Make gerbview compilable and working (does not use now layers and layer masks from Pcbnew).
...
Export to Pcbnew is broken, but it is a very rarely used feature. It will be fixed later.
2014-06-27 19:07:42 +02:00
Maciej Suminski
6d15131231
Some more missing D()->DBG() changes.
2013-09-10 17:07:46 +02:00
Dick Hollenbeck
1f3b3d681c
fix some compiler warnings
2013-04-18 12:03:47 -05:00
jean-pierre charras
1ae31edb9a
Gerbview: Minor fixes
2013-03-06 20:32:59 +01:00