Jeff Young
0ead8a14a1
Handle holes in shapes when creating bounding hulls.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16347
2024-02-22 23:36:24 +00:00
Jeff Young
0cf433b28e
CONVERT_TOOL::CreateLines() doesn't use SKIP_STRUCT flag.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16930
2024-02-12 23:59:33 +00:00
Jeff Young
0890ac57dd
Improve clarity of default zone settings.
2024-02-03 13:22:16 +00:00
Jeff Young
df83e24eb7
Cleanup.
...
It's been a long time since line style was specific to plotting.
2023-11-25 13:12:45 +00:00
Jeff Young
b218617469
Honour bounding-hull setting on closed shapes and chained segments.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/16092
2023-11-16 09:07:54 +00:00
Jeff Young
fca1ad5285
Ask user if they want to delete original items after conversion.
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15938
2023-10-25 00:11:08 +01:00
Seth Hillbrand
88cbbbcdae
Add error message when we cannot form a polygon
...
Explains to the user why the polygon creation failed
Fixes https://gitlab.com/kicad/code/kicad/-/issues/15704
2023-09-20 13:42:31 -07:00
Jeff Young
cc0facdd4e
ADDED: Convert Pad to Polygon
2023-09-14 16:36:37 +01:00
jean-pierre charras
a16ab0aae1
Replace SHAPE_T::RECT by SHAPE_T::RECTANGLE: RECT creates a collision name
...
issue with a Windows header on msys2.
Change very similar to the commit 9a47b344
about class PAD_SHAPE.
No actual code change
2023-07-25 09:11:55 +02:00
Jeff Young
1218f61d0a
Implement undo/redo for footprint children.
...
Our special-cases to handle the fact that we didn't do this had far
outgrown the code necessary to actually handle it.
2023-07-15 17:37:31 +01:00
Jeff Young
be63e1824e
Create filled polygons when centerline is chosen.
2023-07-12 10:41:46 +01:00
Mike Williams
37837dc392
PCB: introduce PCB_FIELD_T
2023-06-20 18:34:52 +00:00
Jeff Young
c71cf21e2f
Use rendered text to generate bounding box for knockout text.
...
Don't open-code knockout text shape generation in several different
places.
Make sure triangulated knockout text gets clearance added when
specified.
Collapse duplicated footprint text item plot routine (they're no
longer any different from plotting pcb text items).
2023-05-28 17:20:11 +01:00
Jeff Young
6807ca6f9f
Allow text input to Convert to Polygon/Zone/Keepout.
...
Also fixes non-copper zone filler to honor fill keepouts.
Fixes https://gitlab.com/kicad/code/kicad/issues/14566
2023-04-28 17:43:08 +01:00
Jeff Young
bbd6c80507
Collapse FP_* down into their PCB_* equivalents.
2023-03-31 22:57:46 +01:00
Jeff Young
499b58f505
ADDED: user-specified gap and linewidth for bounding hull creation.
2023-02-12 23:16:45 +00:00
Jeff Young
45eae3e594
Don't Simplify() polys with arcs in them.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13134
2022-12-12 12:54:34 +00:00
Jeff Young
20791c99ac
Allow conversion of single track segments and vias.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13047
2022-12-01 17:15:29 +00:00
Jeff Young
6befa1c57e
A bit of cleanup to recent convert tool changes.
2022-12-01 14:53:13 +00:00
Jeff Young
4d8e73a630
Allow tracks as input to bounding hull generation.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13047
2022-12-01 14:53:13 +00:00
Jeff Young
98ab078905
Remember conversion strategy.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13043
2022-11-30 14:29:16 +00:00
Jeff Young
8dbd6fee00
Go back to smaller chaining epsilon.
...
Using a large epsilon here to allow for sloppy drawing can cause
the algorithm to miss very short segments in a converted bezier.
So use an epsilon only large enough to cover for rouding errors in
the conversion.
Fixes https://gitlab.com/kicad/code/kicad/issues/12951
2022-11-30 13:26:45 +00:00
Jeff Young
8165fc6c44
Give up trying to infer what kind of polygon the user wants.
...
In many instances there are 3 valid answers: mimic linewidths, use
centerlines, and build a bounding hull.
Fixes https://gitlab.com/kicad/code/kicad/issues/12950
2022-11-28 22:12:53 +00:00
Jeff Young
ec9c6a8053
Separate creation of polygons for open and closed shapes.
...
This allows us to create a bounding hull from an open shape-line-chain,
which is useful for defining milled slots.
2022-11-27 18:29:41 +00:00
Jeff Young
3fc727bb91
Clear selection before deleting objects during conversion.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12879
2022-11-11 17:53:01 +00:00
Seth Hillbrand
c7c4439027
Allow bezier->line/poly conversion
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12778
2022-10-31 12:48:53 -07:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
jean-pierre charras
6b3d36b6c3
CONVERT_TOOL: also show the "Create From Selection" menu if a array can be created
...
The "Create Array" sub-menu was recently moved to this menu, so it must me
shown as soon as an array can be created.
2022-09-07 10:53:27 +02:00
Jeff Young
c30a557810
ADDED netclass assignment from PCB canvas.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5975
2022-09-03 19:29:59 +01:00
Seth Hillbrand
f1261e71d4
Replace boost::optional with std::optional
2022-08-25 15:50:47 -07:00
Jeff Young
1871812f2b
Consolidate on a more widely used sub-type architecture.
2022-08-23 12:57:55 +01:00
Jeff Young
aa2ad3b44c
Move KICAD_T[] to std::initializer_list<KICAD_T>.
2022-08-20 10:28:11 +01:00
Jeff Young
927bc8141b
Init member variables.
2022-08-01 13:09:51 +01:00
Jeff Young
6f49b57f9b
Cleanup & performance enhancements.
2022-08-01 13:09:51 +01:00
Jeff Young
f0b9e67212
Add ignore-line-widths mode to CONVERT_TOOL.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/5911
2022-07-29 21:39:03 +01:00
Jeff Young
fc1afa6298
Improvements to convert tool.
...
1) Handle filled shapes
2) If a chained outline can't be found, build hulls of the individual
segments
3) Combine intersecting shapes
4) Simplify code
Fixes https://gitlab.com/kicad/code/kicad/issues/git
Fixes https://gitlab.com/kicad/code/kicad/issues/5911
2022-07-27 18:57:45 +01:00
Seth Hillbrand
737d65fd36
Skip zero-size elements when converting
...
Also fixes an assertion when converting to polygon from the board editor
Fixes https://gitlab.com/kicad/code/kicad/issues/11313
(cherry picked from commit 6706a5c462
)
2022-04-01 13:24:10 -07:00
Seth Hillbrand
2fafa55647
Maintain width of converted tracks
2022-03-02 10:45:53 -08:00
Seth Hillbrand
7e836ae27a
Select the copper layer before processing
...
If we are converting to tracks, the copper layer needs to be selected
before any other elements are processed, otherwise, we end up with the
default undefined layer
Fixes https://gitlab.com/kicad/code/kicad/issues/11025
(cherry picked from commit 9396735733
)
2022-03-02 10:41:44 -08:00
Jeff Young
34a9a165c9
More wide-string declarations.
2022-02-05 22:26:31 +00:00
Jon Evans
bf38cb56b7
Handle footprint shapes in polygon creation
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10259
(cherry picked from commit f9d8ec6137
)
2022-01-04 21:31:47 -05:00
Jon Evans
4be56825bb
Fix creating polygons from footprint rule areas
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/10257
(cherry picked from commit e9b91b6fab
)
2022-01-04 21:31:40 -05:00
Marek Roszko
c4c56de708
Neurotically update position wxPoint usages
2022-01-01 11:55:51 -05:00
Jeff Young
2bc86fa0a8
Shapes for schematic.
...
ADDED arc, circle and rectangle shapes for schematic. Shapes support
line styles and fill colors.
CHANGED sheet background color in Edit Text & Graphics Properties to
fill color (and it now affects shapes).
Pushed STROKE_PARAMS down into common and moved all shapes to using it
for stroke descriptions.
2021-12-23 20:36:07 +00:00
Jon Evans
62e6f542ed
Init zone type when creating in convert tool
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9918
2021-12-09 18:20:30 -05:00
Jon Evans
a9168860e0
Reduce excessive epsilon in polygon search algo
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9903
2021-12-08 21:04:23 -05:00
Jeff Young
f9861b4a6c
Finish arc rework and push out to file formats.
2021-10-15 12:45:43 +01:00
Jeff Young
9b9e379aa0
Overhaul arc internal model to not over-specify information.
2021-10-15 12:45:43 +01:00
Jeff Young
8b08c9e53f
Shorter names before things get out of hand.
...
Also, remove comments indicating CURVE is a Bezier. Just call it a
BEZIER.
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