Commit 0ceb90df authored by Cirilo Bernardo's avatar Cirilo Bernardo Committed by Wayne Stambaugh

Fix bug in IDF exporter when circles and arcs have zero radius. (fixes lp:1371656)

parent a5972e7b
...@@ -76,6 +76,10 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard ) ...@@ -76,6 +76,10 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
{ {
case S_SEGMENT: case S_SEGMENT:
{ {
if( ( graphic->GetStart().x == graphic->GetEnd().x )
&& ( graphic->GetStart().y == graphic->GetEnd().y ) )
break;
sp.x = graphic->GetStart().x * scale + offX; sp.x = graphic->GetStart().x * scale + offX;
sp.y = -graphic->GetStart().y * scale + offY; sp.y = -graphic->GetStart().y * scale + offY;
ep.x = graphic->GetEnd().x * scale + offX; ep.x = graphic->GetEnd().x * scale + offX;
...@@ -89,6 +93,10 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard ) ...@@ -89,6 +93,10 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
case S_ARC: case S_ARC:
{ {
if( ( graphic->GetCenter().x == graphic->GetArcStart().x )
&& ( graphic->GetCenter().y == graphic->GetArcStart().y ) )
break;
sp.x = graphic->GetCenter().x * scale + offX; sp.x = graphic->GetCenter().x * scale + offX;
sp.y = -graphic->GetCenter().y * scale + offY; sp.y = -graphic->GetCenter().y * scale + offY;
ep.x = graphic->GetArcStart().x * scale + offX; ep.x = graphic->GetArcStart().x * scale + offX;
...@@ -102,6 +110,9 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard ) ...@@ -102,6 +110,9 @@ static void idf_export_outline( BOARD* aPcb, IDF3_BOARD& aIDFBoard )
case S_CIRCLE: case S_CIRCLE:
{ {
if( graphic->GetRadius() == 0 )
break;
sp.x = graphic->GetCenter().x * scale + offX; sp.x = graphic->GetCenter().x * scale + offX;
sp.y = -graphic->GetCenter().y * scale + offY; sp.y = -graphic->GetCenter().y * scale + offY;
ep.x = sp.x - graphic->GetRadius() * scale; ep.x = sp.x - graphic->GetRadius() * scale;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment