Commit Graph

15532 Commits

Author SHA1 Message Date
Marek Roszko d193334a10 Add vrml export to cli
Roughcut as the vrml exporter needs some loving

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15472
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13952
2023-08-24 20:39:21 -04:00
Alex Shvartzkop b1b66f66f4 Prevent crash when a python script tries to use pcbnew too early.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15414
2023-08-25 00:09:56 +03:00
Alex Shvartzkop f842e6ac7a STEP: export arcs in board contours as curves, not polygons.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13825
2023-08-24 21:53:53 +03:00
Mike Williams 2b78c20a62 PCB: add grid overrides to graphics/router/etc. 2023-08-24 13:58:22 -04:00
Jeff Young 300014177f Honour pad offset when creating custom pad anchors (and polygons).
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15494
2023-08-24 17:30:22 +01:00
Jeff Young 0f81dd3b5e Give Grid Settings a more standard KiCad look and feel.
Also simplifies the dialog by removing the user grid (now that you
can add as many user grids as you want).

This does mean that you can no longer have an asymmetric grid, but
it gets too complex if we allow everything for everyone.
2023-08-24 16:41:08 +01:00
Mike Williams 9079df85fd PCB: check ratsnest for nullptr (segfaults) 2023-08-24 10:51:34 -04:00
Mike Williams d9c2e0ab54 PCB: start of grid overrides
Only works for moves.
2023-08-24 10:29:09 -04:00
Mike Williams 0f781f328e GRID_HELPER: push code to parent class
Prep'ing for PCB grid overrides
2023-08-24 10:29:09 -04:00
Alex Shvartzkop b8ce97b532 STEP export: fix circles. 2023-08-24 14:57:15 +03:00
Alex Shvartzkop 83e9d87cde STEP export: fix hole cutting counter message. 2023-08-24 14:26:27 +03:00
Jeff Young 7fcce5224d Fix compiler warnings. 2023-08-24 12:12:16 +01:00
Jeff Young 6040f49272 Don't write opaque data types to PNS log. 2023-08-24 12:12:16 +01:00
jean-pierre charras eb8c1d2a90 Fix compil issues (and probably a bug). Also display calculation time info. 2023-08-24 13:02:10 +02:00
Alex Shvartzkop cb54bdfa84 STEP export: add bounding box optimizations for cutting holes. 2023-08-24 05:42:56 +03:00
Alex Shvartzkop 458d5fbeb8 STEP export: use unfractured polygons.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15486
2023-08-24 03:47:55 +03:00
Josue Huaroto c19804bb95 Replace DisplayError to an infobar for missing footprint library 2023-08-23 22:05:44 +00:00
Seth Hillbrand db8e15ce88 Require wxWidgets 3.2
Removes old defines and work arounds for earlier wx versions and adds a
CMake requirement to use at least 3.2 (or the minimum matching wxPython
version)
2023-08-23 22:02:56 +00:00
Roberto Fernandez Bautista f4f1ca352a Fix crash when running PNS Router Dump (pressing 0)
Some ITEMs don't have a Parent
2023-08-23 22:19:47 +02:00
jean-pierre charras 196fc67ece Step exporter: generate oblong pad holes using 2 arcs + 2 segments.
Previously, the oblong shapes were polygons.
2023-08-23 18:16:25 +02:00
Jeff Young 6166a96b8e Update PSN logger to new NET_HANDLE architecture. 2023-08-23 14:10:03 +01:00
Jeff Young 0c37e3c443 Remove realistic-mode (and duplicated settings from preferences).
Most of these settings are now available in the appearances panel.
It was concluded in a Zulip discussion that any missing items can
be added back in time if people find they need them (ie: complain).

Also hooks up 3DViewer to the common language framework.
2023-08-23 14:07:58 +01:00
jean-pierre charras 43c7cfec3a Revert "Record hole knockouts in zone filler earlier"
This reverts commit 3030c80de7.
The commit #3030c80d was a workaround related to a Clipper2 issue.
Updating Clipper2 is a better fix
2023-08-22 18:18:55 +02:00
Jeff Young 76cd637895 Make the net identifier opaque to PNS router.
This also improves performance as we don't have to look up the
netcodes in a map.
2023-08-22 15:17:02 +00:00
jean-pierre charras b59f7fbd9d DIALOG_TEXT_PROPERTIES_BASE: allows more room in wxTextCtrl for coordinates.
Sometimes coordinates in mils can have many digits.
2023-08-22 15:30:19 +02:00
Alex Shvartzkop 10e2e4a12d Another try at fixing arcs.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15471
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15469
2023-08-22 16:10:58 +03:00
Mike Williams e98dfa2bfc PCB: swap drill and grid origin icon order for convenience
Fixes: https://gitlab.com/kicad/code/kicad/-/issues/11738
2023-08-22 08:47:25 -04:00
Marek Roszko 5eac1840a0 Drop the 3d command in favor of direct 2023-08-21 21:47:56 -04:00
Alex Shvartzkop cabcf4afe6 Altium: better message when importing unsupported format versions.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15465
2023-08-21 19:22:56 +03:00
Jeff Young 55a7b9e6bf More consistent naming.
(Also better differentiates the PCBEXPR_ classes from PCB_
objects.)
2023-08-21 15:26:33 +01:00
Jeff Young 3cade7fc47 Don't use string compare for A.NetClass == B.NetClass.
(or A.NetName == B.NetName, or != of either)
2023-08-21 15:26:33 +01:00
jean-pierre charras 84fa4532b9 DIALOG_EXPORT_STEP: fix some issues:
- add missing inits (the zones were never created)
- fix a incorrect tool tip
- minor enhancements (add afew messages during export)
2023-08-21 09:36:25 +02:00
Marek Roszko b52b05ebbb Add zone export to step export
Mileage may vary on performance, decent enough for my board.
Warning, freecad chokes on boards with zones, but commerical tools are fine

Fixes https://gitlab.com/kicad/code/kicad/-/issues/15234
2023-08-20 22:11:45 -04:00
Jeff Young cf22d5b99b Preferences setting for force-show-fields-when-fp-selected.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15215
2023-08-20 18:10:28 +01:00
jean-pierre charras 70c05109a0 PCB_PARSER::parsePCB_TEXTBOX(): fix bug when a TCB_TEXTBOX was rotated:
the textbox was rotated, but thai is incorrect: the polygon coordinates
are good, and must be not rotated: only the text angle must be set.
2023-08-20 18:34:57 +02:00
jean-pierre charras 4d1f9f6fb9 Pcbnew: Fix some draw issues in PCB_TEXT and PCB_TEXTBOX:
- fix incorrect ViewGetLayers() layer list.
- fix incorrect color of graphic items (BOARD_CONNECTED_ITEM items) on copper layers
- slightly modify how a PCB_TEXTBOX is drawn on LAYER_LOCKED_ITEM_SHADOW.
Fixes #15458
https://gitlab.com/kicad/code/kicad/-/issues/15458
2023-08-20 17:33:11 +02:00
jean-pierre charras adb1ac8cb8 Fix an incorrect test thact crashes fp editor
Fixes #15457
https://gitlab.com/kicad/code/kicad/-/issues/15457
2023-08-20 14:04:50 +02:00
jean-pierre charras 1c11a2c7bd Capture exceptions thrown by FP_LIB_TABLE::FindRow() in some places.
FindRow() exception is unfortunately not captured in all places using it.
The result is the application closes.
2023-08-20 12:27:37 +02:00
Marek Roszko ea3101587a Add gltf export to step dialog 2023-08-19 19:01:29 -04:00
Marek Roszko 7ef3252064 Use an indeterminate progress bar for the 3d export log window 2023-08-19 19:01:29 -04:00
Jeff Young 8f1a987044 Fix typos. 2023-08-19 23:20:52 +01:00
Jeff Young fa060c7c58 Make sure dummy tracks have ROUTER_TRANSIENT flags.
Also give them more info that might be queried by custom DRC rules.
This currently just includes positioning info (it already included
nets and principal layer).  We *could* also try to figure out all
layers for dummy vias, and/or widths for dummy tracks / arcs....
2023-08-19 20:51:04 +00:00
Marek Roszko 50ac5db8d2 Add binary GLTF export option to kicad-cli
Not by any means finished
2023-08-19 16:47:42 -04:00
Marek Roszko 5870b4f373 Mini-refactor step to a generic "3d" cli option (step command still exists for now) 2023-08-19 16:47:41 -04:00
Jeff Young a2627fec60 Don't snap to footprint-private items.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15447
2023-08-19 21:03:05 +01:00
Jon Evans 0c529411d7 Update SHAPE_POLY_SET API to not hide virtual functions 2023-08-18 21:40:40 -04:00
Jeff Young 6c9ba52f18 Clean up naming. 2023-08-18 22:20:09 +01:00
Jeff Young ec980e8696 Move "parent" property from PAD to BOARD_ITEM. 2023-08-18 22:20:09 +01:00
Seth Hillbrand 57ba38560c Optimize library load time for Altium plugin
Load times were >20min for moderate sized libraries as EnumFiles
iterated over the entire list for each operation.  The update modifies
our third-party lib to allow a return value, stopping the iteration when
we find our desired entry.  This also provides a short-circuit for
ASCII-based names, allowing single-level parsing if available
2023-08-18 13:50:15 -07:00
Alex Shvartzkop 5131dae568 Graphics import improvements/fixes:
- add support for color
- support non-uniform scale
- add GetImageBBox()
- fix SVG GetImageWidth/Height not being in mm
- fix import offset not being in mm
- add graphics importer for LIB_SYMBOL
2023-08-18 22:52:49 +03:00