diff --git a/pcbnew/plugins/kicad/kicad_plugin.cpp b/pcbnew/plugins/kicad/kicad_plugin.cpp index 9ca6eb455a..dbf4dc05d8 100644 --- a/pcbnew/plugins/kicad/kicad_plugin.cpp +++ b/pcbnew/plugins/kicad/kicad_plugin.cpp @@ -841,11 +841,15 @@ void PCB_IO::format( PCB_SHAPE* aShape, int aNestLevel ) const m_out->Print( 0, " (width %s)", FormatInternalUnits( aShape->GetWidth() ).c_str() ); - // The filled flag represents if a solid fill is present - if( aShape->IsFilled() ) - m_out->Print( 0, " (fill solid)" ); - else - m_out->Print( 0, " (fill none)" ); + // The filled flag represents if a solid fill is present on circles, rectangles and polygons + if( ( aShape->GetShape() == S_POLYGON ) || ( aShape->GetShape() == S_RECT ) + || ( aShape->GetShape() == S_CIRCLE ) ) + { + if( aShape->IsFilled() ) + m_out->Print( 0, " (fill solid)" ); + else + m_out->Print( 0, " (fill none)" ); + } m_out->Print( 0, " (tstamp %s)", TO_UTF8( aShape->m_Uuid.AsString() ) ); @@ -932,11 +936,15 @@ void PCB_IO::format( FP_SHAPE* aFPShape, int aNestLevel ) const m_out->Print( 0, " (width %s)", FormatInternalUnits( aFPShape->GetWidth() ).c_str() ); - // The filled flag represents if a solid fill is present - if( aFPShape->IsFilled() ) - m_out->Print( 0, " (fill solid)" ); - else - m_out->Print( 0, " (fill none)" ); + // The filled flag represents if a solid fill is present on circles, rectangles and polygons + if( ( aFPShape->GetShape() == S_POLYGON ) || ( aFPShape->GetShape() == S_RECT ) + || ( aFPShape->GetShape() == S_CIRCLE ) ) + { + if( aFPShape->IsFilled() ) + m_out->Print( 0, " (fill solid)" ); + else + m_out->Print( 0, " (fill none)" ); + } m_out->Print( 0, " (tstamp %s)", TO_UTF8( aFPShape->m_Uuid.AsString() ) );