Allow edits to self-intersecting polygons.

1) Intermediate states might be self-intersecting, and we shouldn't
be policing our users on what order to do things in
2) The polygon might already be self-intersecting, at which point we're
preventing the user from fixing it.

Also includes better const management for SHAPE_POLY_SET API.

Fixes: lp:1833831
* https://bugs.launchpad.net/kicad/+bug/1833831
This commit is contained in:
Jeff Young
2019-07-14 18:18:48 +01:00
parent fe188489c7
commit a3c74051c2
6 changed files with 59 additions and 42 deletions
+1 -1
View File
@@ -749,7 +749,7 @@ void BRDITEMS_PLOTTER::PlotDrawSegment( DRAWSEGMENT* aSeg )
{
if( !aSeg->IsPolygonFilled() )
{
for( auto it = aSeg->GetPolyShape().IterateSegments( 0 ); it; it++ )
for( auto it = aSeg->GetPolyShape().CIterateSegments( 0 ); it; it++ )
{
auto seg = it.Get();
m_plotter->ThickSegment( wxPoint( seg.A ), wxPoint( seg.B ),