Avoid drawing null-arcs in 3d viewer
An arc with no radius or no angle is not visible and should be avoided Fixes https://gitlab.com/kicad/code/kicad/issues/14271
This commit is contained in:
parent
f0892598a4
commit
72ebe5a429
|
@ -275,6 +275,10 @@ void BOARD_ADAPTER::createTrack( const PCB_TRACK* aTrack, CONTAINER_2D_BASE* aDs
|
||||||
int arcsegcount = GetArcToSegmentCount( radius, ARC_HIGH_DEF, arc_angle );
|
int arcsegcount = GetArcToSegmentCount( radius, ARC_HIGH_DEF, arc_angle );
|
||||||
int circlesegcount;
|
int circlesegcount;
|
||||||
|
|
||||||
|
// Avoid arcs that cannot be drawn
|
||||||
|
if( radius < std::numeric_limits<double>::min() || arc_angle.IsZero() )
|
||||||
|
break;
|
||||||
|
|
||||||
// We need a circle to segment count. However, the arc angle can be small, and the
|
// We need a circle to segment count. However, the arc angle can be small, and the
|
||||||
// radius very big. so we calculate a reasonable value for circlesegcount.
|
// radius very big. so we calculate a reasonable value for circlesegcount.
|
||||||
if( arcsegcount <= 1 ) // The arc will be approximated by a segment
|
if( arcsegcount <= 1 ) // The arc will be approximated by a segment
|
||||||
|
|
Loading…
Reference in New Issue