Jeff Young
1792a985a7
Use board's maxError value when possible.
4 years ago
jean-pierre charras
36048fa436
OPENGL_GAL::DrawArcSegment(): use a better number of segm to approximate the arc.
Previously, the count of segments used a magic number optimized for Pcbnew.
This is not good, and does not work well on Gerbview.
The count uses now a max error acceptable is approximation (5 microns in Gerbview and Pcbnew).
Fixes #9101
https://gitlab.com/kicad/code/kicad/issues/9101
4 years ago
Jeff Young
59c15842f8
Exclude formatting chars from text width approximation.
Fixes https://gitlab.com/kicad/code/kicad/issues/9080
4 years ago
Jeff Young
e6ca9837a2
Clear numbers from non-numberable pads and don't run DRC on them.
This was also the last straw on the misnamed PAD::GetName() and
PAD::SetName(), which are now PAD::GetNumber() and PAD::SetNumber().
Fixes https://gitlab.com/kicad/code/kicad/issues/9017
4 years ago
Jeff Young
1a252b4f96
Add a compile error for ill-defined rules, and more performance.
Also adds const-safety to GetBoard().
4 years ago
Jeff Young
8b9161b27d
Be more careful with alpha value.
Fixes https://gitlab.com/kicad/code/kicad/issues/8850
4 years ago
Jeff Young
6aaf4413b3
Fix kicad_string.h / string.cpp mismatch.
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
4 years ago
Jeff Young
f221220fe2
Rename layer ids file.
It hasn't had anything to do with colors or visibility for some time
now.
4 years ago
david-beinder
c0f12cf8b0
PCB painter: skip early to polygon algo in outline mode
4 years ago
Jeff Young
e62969d007
Move zone fracture display mode to AdvancedCfg, and add triangulation.
Fixes https://gitlab.com/kicad/code/kicad/issues/8762
4 years ago
Jeff Young
0fb864d596
Pull some name changes back from 7.0 to ease merging.
4 years ago
Wayne Stambaugh
cf00319c85
More NULL expunging.
4 years ago
Jeff Young
e61822c9e0
Naming conventions and a bug fix on arc points.
4 years ago
Jeff Young
625006ca30
Remove front/back SMD pad color now that we have opacity sliders.
Fixes https://gitlab.com/kicad/code/kicad/issues/8761
4 years ago
Jon Evans
cafd42911e
Do not use opacity for zone outlines
The opacity is intended to aid seeing through
zone filled areas and applying it to outlines
makes them hard to see and select.
4 years ago
jean-pierre charras
fa49b54f93
Fix minor issue in TransformCircleToPolygon() when aError is set to a large value.
pcb_painter.cpp: add (but not activate) compil option to show the conversion
of SHAPE_ARC::ConvertToPolyline as segments, for debug purposes.
4 years ago
jean-pierre charras
310adedf85
Add GetCircleToSegmentError() to geometry/geometry_utils.
This function returns the error created by a circle to segment approximation.
4 years ago
jean-pierre charras
31d7a0a8d1
TransformArcToPolygon(): slightly better approximation of arc.
The error between the "right" shape and the polygon is slightly smaller.
The approximations of the inner arc and the outer arc are better, but not perfect.
Also add (for test and debug purpose only) the code to show the polygon when
drawing a PCB_ARC (currently disabled)
4 years ago
Wayne Stambaugh
27e9750507
Pcbnew: fix footprint selection bug.
Do not remove footprint objects from list of selected objects when there
are no drawable objects other than the reference and value text.
Increase the minimum size rectangle for footprints from 0.025mm to 1mm
when the footprint has no drawing objects so that it is easier to select
the footprint in this case.
Add some pretty colors to the footprint bounding box and hull outline
so that it's possible to tell the difference between selection areas.
Fixes https://gitlab.com/kicad/code/kicad/-/issues/8379
4 years ago
Jeff Young
5fa5a73c6d
File open/import progress dialogs.
Fixes https://gitlab.com/kicad/code/kicad/issues/6864
Fixes https://gitlab.com/kicad/code/kicad/issues/2166
4 years ago
Jeff Young
ae612a454e
Make blind via rendering more intuitive by putting top on top...
bottom on bottom, and the via colour larger.
4 years ago
jean-pierre charras
9fb77473cd
pcb_painter.cpp: fix incorrect shape of CHAMFERED_RECT pads with negative clearance.
Negative clearance (for instance on mask or paste layer) was not taken in account
4 years ago
jean-pierre charras
00b4134eb8
pcb_painter.cpp: fix incorrect shape of ROUNDRECT pads with negative clearance.
If a negative clearance (for instance on mask or paste layer) is set to more
than the corner radius, the drawn shape was broken (fully incorrect size)
4 years ago
Jeff Young
096e342386
Prefix TRACK, ARC and VIA.
4 years ago
Jeff Young
16b0147af8
Prefix DIMENSION types.
4 years ago
luz paz
f968fc8719
Fix source comment / documentation typos
4 years ago
Jeff Young
97a2c4094b
Don't label free pads with connections as '*'.
Fixes https://gitlab.com/kicad/code/kicad/issues/8385
4 years ago
Marek Roszko
10e60acf34
Clean up including of board_design_settings.h
4 years ago
Jeff Young
688ee18989
Don't apply margin to "interior" shapes in a shape-set.
Fixes https://gitlab.com/kicad/code/kicad/issues/8345
5 years ago
Marek Roszko
03cf2b517f
Enum class PAD_ATTR_T
Renamed such that python stays the same
5 years ago
Marek Roszko
b243c2280d
enum class PAD_SHAPE_T
5 years ago
Marek Roszko
21fde9b629
enum class PCB_SHAPE_TYPE_T
5 years ago
Jeff Young
55d2d0d93e
Fix some bugs in file save as.
The order of operations *appeared* to be a bit out of joint.
We need to create a new project in project mode as well as in standalone.
Fixes https://gitlab.com/kicad/code/kicad/issues/8143
5 years ago
Jeff Young
7d58c53e42
Apply new hole-dimming logic to via pads.
Fixes https://gitlab.com/kicad/code/kicad/issues/8144
5 years ago
Jeff Young
29e5882637
Fix typo (found by Coverity).
5 years ago
Jeff Young
675444a646
Dim hole walls that don't pass through high-contrast layers.
Fixes https://gitlab.com/kicad/code/kicad/issues/8144
5 years ago
Jeff Young
a8b40bf683
Avoid Clipper when possible.
When expanding an error to the outside of a rounded corner pad we
need to trim it to the pad bounding box or else we get little ears
where the circle approximation meets the pad square. This is expensive,
and for clearance lines we don't really care whether the error is
inside or outside.
Fixes https://gitlab.com/kicad/code/kicad/issues/8157
5 years ago
Jeff Young
4034fcb7ac
Fix yet another edge case in B&W printing of holes.
Fixes https://gitlab.com/kicad/code/kicad/issues/7944
5 years ago
Jeff Young
cad1cb0262
Improve naming.
5 years ago
Mikolaj Wielgus
c3c3649211
Stop text from causing a shift during flip when >1 items are selected
1e1be730 fixed this only for one item.
Fixes https://gitlab.com/kicad/code/kicad/issues/7304
5 years ago
Dominik Wernberger
e2aa7be4b3
Added a lot of consts and refactored a few lines
5 years ago
Jeff Young
2bc10d58b5
Fix some cases where PCB_FP_ZONE_T was left out.
Fixes https://gitlab.com/kicad/code/kicad/issues/7615
5 years ago
Jeff Young
86aaa2e9cb
Rationalize footprint bounding boxes and cache all of them.
Fixes https://gitlab.com/kicad/code/kicad/issues/7720
5 years ago
Jeff Young
60d4d5b846
Scale down netnames on tracks so overbars fit.
Also fixes a bug where the overbar ignored the color opacity.
Fixes https://gitlab.com/kicad/code/kicad/issues/7524
5 years ago
Jeff Young
618e824b0f
Cleanup includes and formatting.
5 years ago
Seth Hillbrand
aa0db969ca
Caching ConvexHull routine
Stores a cache of the convex hull similar to the bounding box. Modifies
the hull based on actions to allow complex footprint graphics without delay
Fixes https://gitlab.com/kicad/code/kicad/issues/7341
5 years ago
Jeff Young
46658076bd
Minor cleanup.
5 years ago
Jeff Young
b8e97bb6b6
Only apply B&W printer fixes when printing.
Fixes https://gitlab.com/kicad/code/kicad/issues/7388
5 years ago
Jeff Young
90519c8324
Allow pads with holes to be selected when hole is visible.
5 years ago
Jeff Young
1f27b7e7df
Don't render hole walls when no physical layers are visible.
Fixes https://gitlab.com/kicad/code/kicad/issues/7369
5 years ago