Tomasz Wlostowski
bba742b804
pcbnew: support vertex line start/end width to correctly import certain DXF files
2021-10-25 17:39:09 +02:00
Tomasz Wlostowski
df47c1c4e9
pcbnew: use doubles to pass line widths in the DXF importer as they are expressed in DXF's units and can case severe rounding errors when passed as ints
2021-10-25 17:36:04 +02:00
Roberto Fernandez Bautista
987d64c88e
pcbnew graphics import: Fix arc winding direction
2021-10-23 11:02:00 +01:00
Jeff Young
9b9e379aa0
Overhaul arc internal model to not over-specify information.
2021-10-15 12:45:43 +01:00
Jeff Young
a41944020d
Push most of PCB_SHAPE impl down in to EDA_SHAPE.
2021-10-15 12:45:43 +01:00
Jeff Young
b84d1456d5
KIFACE_I -> KIFACE_BASE.
2021-09-14 23:45:14 +01:00
Jeff Young
3aae3c6f65
Dark mode for a bunch of HTML dialogs.
...
WX_HTML_REPORT_BOX
WX_HTML_REPORT_PANEL
HTML_MESSAGEBOX
DIALOG_DISPLAY_HTML_TEXT
Fixes https://gitlab.com/kicad/code/kicad/issues/9157
Fixes https://gitlab.com/kicad/code/kicad/issues/9156
2021-09-14 21:23:57 +01:00
Marek Roszko
daca9d21f2
Add dxf point import
...
Fix #9149
2021-09-12 19:38:52 -04:00
Jeff Young
f221220fe2
Rename layer ids file.
...
It hasn't had anything to do with colors or visibility for some time
now.
2021-07-29 16:03:25 +01:00
Wayne Stambaugh
37b200cb3e
Pass wxString objects by reference instead of on the stack.
2021-07-27 08:41:27 -04:00
Jeff Young
0fb864d596
Pull some name changes back from 7.0 to ease merging.
2021-07-21 20:58:59 +01:00
Wayne Stambaugh
cf00319c85
More NULL expunging.
2021-07-20 07:27:18 -04:00
Jeff Young
e61822c9e0
Naming conventions and a bug fix on arc points.
2021-07-19 13:17:12 +01:00
Marek Roszko
b924c85f80
Start recording the precision of dxf imports
2021-06-27 00:38:19 -04:00
luz paz
f968fc8719
Fix source comment / documentation typos
2021-06-09 19:32:58 +00:00
Marek Roszko
4712d7a918
Remove a leaky wx/msgdlg.h include
2021-06-06 08:45:38 -04:00
Wayne Stambaugh
f57ef55cd6
Pcbnew header housekeeping round 3.
2021-06-04 13:50:08 -04:00
Marek Roszko
c4801a4dd4
Catch oom for graphics importer
...
Because DXFs and SVGs could be nasty sized
2021-05-01 14:26:47 -04:00
jean-pierre charras
0427bda768
Remove useless wx/wx.h include, that create sometimes compil warnings on msys.
...
wx/wx.h includes all wxWidgets .h files, and sometimes creates collision
names in #define between kicad and windows headers
Moreover, blindly including a lot of useless files is compil time consuming
2021-05-01 19:32:15 +02:00
Marek Roszko
21fde9b629
enum class PCB_SHAPE_TYPE_T
2021-04-30 22:36:12 -04:00
Marek Roszko
39a0bc6252
Remove erroneous block check in dxf import added during previous improvements
2021-04-28 18:48:59 -04:00
jean-pierre charras
9a0f9575b6
Fix minor Coverity warnings
2021-03-25 09:12:24 +01:00
Marek Roszko
e409b04538
More gracefully handle tinyspline not liking a spline definition
...
Partial fix for #6634
2021-03-24 00:37:01 -04:00
Jeff Young
07aea4339d
Formatting.
2021-03-20 21:53:29 +00:00
Jon Evans
18037e2f65
Rework bitmap system to load from archived PNGs
...
Bitmaps are now identified by an enum class instead of by pointers.
Bitmap loading and caching is now handled by a class in common, and
we no longer compile most bitmaps into the binary, so there is no
longer a bitmaps static library.
Instead, bitmaps are archived to a .tar.gz file which is installed
in ${KICAD_DATA}/resources/images.tar.gz
The source PNGs are checked in to Git as the original CPP files were,
so that people can build without the required dependencies to convert
SVGs to PNGs.
Initial support is also added for dark theme icons, although this
is not yet exposed in the GUI.
Stubs are present for multi-resolution image resources, but this is
not fully-baked yet and could use some refinement.
2021-03-11 08:37:35 -05:00
Seth Hillbrand
9212197c26
Grammar
2021-02-15 15:18:13 -08:00
Marek Roszko
8f21034254
Fix invalid windows macro
...
Missing one underscore at the end
2021-01-31 16:15:50 -05:00
Wayne Stambaugh
6a39b81647
Fix the last of broken Doxygen comment specifiers.
2021-01-27 17:39:44 -05:00
Marek Roszko
828ecb76aa
Remove polyline 3d check added by previous fixes
...
Fix #7030
2021-01-09 18:56:35 -05:00
Michael Kavanagh
154e19b6e7
Icons: use common prefix for small 16x16
2021-01-02 23:16:33 +00:00
Marek Roszko
9322b3a4e1
Use the C++ isnan function
2020-11-29 11:30:45 -05:00
Marek Roszko
5e117bfaa5
Don't allow nan values for dxf text alignment points to creep in
...
Literally the only place dxflib decides to default to NaN....
2020-11-28 20:13:42 -05:00
Marek Roszko
cc7264c0b9
Subtract off the block's base point coordinate from the insert translation
2020-11-28 20:13:42 -05:00
Marek Roszko
cac0d93dfd
Implement DXF INSERT scale
...
This has a chance of being wrong due to how the dimensions are stored in these intermediate objects
2020-11-28 20:13:42 -05:00
Marek Roszko
5607420339
Fix polylines being skipped in DXF blocks
2020-11-25 00:06:02 -05:00
Marek Roszko
272ec53e03
Make DXF import slightly prettier by copying text style width factor
...
It's impossible to replicate the original cad font style but replicating width factors at least
gives you something closer.
2020-11-24 07:15:49 -05:00
Marek Roszko
45598f2933
Add handling of DXF arbitrary axis/extrusions
...
This fixes some DXFs imports where unforunately CAD tools like SolidWorks
randomly decide to mirror circle definitions across the "z" axis (resulting in x or y axis flips in 2d)
Most likely live projection from 3D to 2D drawings introduces this.
However this is DXF specification to describe it so obtusely with vectors for a 2d drawing.
2020-11-23 21:24:38 -05:00
Marek Roszko
44f4d41bba
Fix member variable name
2020-11-23 21:24:38 -05:00
Jeff Young
62e5500420
Cleanup dialog layout & punctuation.
2020-11-23 19:47:55 +00:00
Marek Roszko
32ec8fa928
Implement correct placement of DXF block contained entities
...
DXF blocks are virtual groups of items.
The insert entity is what actually places all the block contents at a given coordinate.
This should fix importing drawings from professional CAD tools like SolidWorks that will have a good bit of blocks.
2020-11-23 10:10:35 -05:00
Marek Roszko
bf59b422bc
Record blocks being received during the import
2020-11-23 10:07:30 -05:00
Marek Roszko
51fcbe47a6
Remove colons from the import gfx dialog fields
2020-11-22 22:15:58 -05:00
Marek Roszko
90db12df2e
Rename the dxf units option to Default Units
...
The reality is the DXF file can still override the selected unit option which is totally fine.
In fact, per specification, there is a way to change units mid-file with block records :/
2020-11-22 22:15:58 -05:00
Marek Roszko
f5e9a2a6da
Use "microns" as the name to be consistent with DXF specification
2020-11-22 15:44:57 -05:00
Marek Roszko
88bee5e32f
Use the last used dxf units selection on dialog open
2020-11-22 15:44:36 -05:00
Marek Roszko
39fe89096e
Allow specifying the DXF file units on import
...
There is no guarantee DXF contains $INSUNIT to specify the units of the file as its optional.
This allows the user to specify the expected units via dropdown.
SolidWorks can definitely generate such unit lacking files as an example
2020-11-22 15:39:37 -05:00
Marek Roszko
f130970469
Handle lineweight in dxf import more properly
...
lineweights can be set to inherit from the layer or block.
2020-11-21 09:22:11 -05:00
Marek Roszko
d59053b775
Fix dxf import making all circles filled
...
Filled objects in dxf is actually not handled at all, they are implemented as "hatched" objects
2020-11-19 21:00:53 -05:00
Marek Roszko
d7e10c22c6
dxflib_qcad: match rename of DimAngularData to DimAngularData2L
...
upstream 1655be6c7d58609397e9f04cfaff08336d69b20e
2020-11-19 19:19:59 -05:00
Jeff Young
7933935b4a
Naming conventions.
2020-11-16 00:04:55 +00:00