Pcbnew: fix issues: Ensure pads type connector have a drill size= 0, like SMD pads. Ensure keepout zones have no net.
This commit is contained in:
parent
ccd9500bfb
commit
9d40727b4c
|
@ -7,9 +7,9 @@
|
||||||
|
|
||||||
#ifndef KICAD_BUILD_VERSION
|
#ifndef KICAD_BUILD_VERSION
|
||||||
#if defined KICAD_GOST
|
#if defined KICAD_GOST
|
||||||
# define KICAD_BUILD_VERSION "(2013-mar-09 GOST)"
|
# define KICAD_BUILD_VERSION "(2013-mar-10 GOST)"
|
||||||
#else
|
#else
|
||||||
# define KICAD_BUILD_VERSION "(2013-mar-09)"
|
# define KICAD_BUILD_VERSION "(2013-mar-10)"
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -17,7 +17,7 @@
|
||||||
|
|
||||||
; General Product Description Definitions
|
; General Product Description Definitions
|
||||||
!define PRODUCT_NAME "KiCad"
|
!define PRODUCT_NAME "KiCad"
|
||||||
!define PRODUCT_VERSION "2013.03.09"
|
!define PRODUCT_VERSION "2013.03.10"
|
||||||
!define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/"
|
!define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/"
|
||||||
!define SOURCEFORGE_WEB_SITE "http://kicad.sourceforge.net/"
|
!define SOURCEFORGE_WEB_SITE "http://kicad.sourceforge.net/"
|
||||||
!define COMPANY_NAME ""
|
!define COMPANY_NAME ""
|
||||||
|
@ -36,7 +36,7 @@ SetCompressor /final /solid lzma
|
||||||
CRCCheck force
|
CRCCheck force
|
||||||
XPStyle on
|
XPStyle on
|
||||||
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
|
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
|
||||||
OutFile "${PRODUCT_NAME}_stable-${PRODUCT_VERSION}-BZR3990_Win_full_version.exe"
|
OutFile "${PRODUCT_NAME}_stable-${PRODUCT_VERSION}-BZR3992_Win_full_version.exe"
|
||||||
InstallDir "$PROGRAMFILES\KiCad"
|
InstallDir "$PROGRAMFILES\KiCad"
|
||||||
ShowInstDetails hide
|
ShowInstDetails hide
|
||||||
ShowUnInstDetails hide
|
ShowUnInstDetails hide
|
||||||
|
|
|
@ -2375,6 +2375,14 @@ void LEGACY_PLUGIN::loadZONE_CONTAINER()
|
||||||
|
|
||||||
else if( TESTLINE( "$endCZONE_OUTLINE" ) )
|
else if( TESTLINE( "$endCZONE_OUTLINE" ) )
|
||||||
{
|
{
|
||||||
|
// Ensure keepout does not have a net
|
||||||
|
// (which have no sense for a keepout zone)
|
||||||
|
if( zc->GetIsKeepout() )
|
||||||
|
{
|
||||||
|
zc->SetNet(0);
|
||||||
|
zc->SetNetName( wxEmptyString );
|
||||||
|
}
|
||||||
|
|
||||||
// should always occur, but who knows, a zone without two corners
|
// should always occur, but who knows, a zone without two corners
|
||||||
// is no zone at all, it's a spot?
|
// is no zone at all, it's a spot?
|
||||||
|
|
||||||
|
|
|
@ -2004,11 +2004,16 @@ D_PAD* PCB_PARSER::parseD_PAD() throw( IO_ERROR, PARSE_ERROR )
|
||||||
pad->SetAttribute( PAD_SMD );
|
pad->SetAttribute( PAD_SMD );
|
||||||
|
|
||||||
// Default D_PAD object is thru hole with drill.
|
// Default D_PAD object is thru hole with drill.
|
||||||
|
// SMD pads have no hole
|
||||||
pad->SetDrillSize( wxSize( 0, 0 ) );
|
pad->SetDrillSize( wxSize( 0, 0 ) );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case T_connect:
|
case T_connect:
|
||||||
pad->SetAttribute( PAD_CONN );
|
pad->SetAttribute( PAD_CONN );
|
||||||
|
|
||||||
|
// Default D_PAD object is thru hole with drill.
|
||||||
|
// CONN pads have no hole
|
||||||
|
pad->SetDrillSize( wxSize( 0, 0 ) );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case T_np_thru_hole:
|
case T_np_thru_hole:
|
||||||
|
@ -2136,8 +2141,8 @@ D_PAD* PCB_PARSER::parseD_PAD() throw( IO_ERROR, PARSE_ERROR )
|
||||||
// This fixes a bug caused by setting the default D_PAD drill size to a value
|
// This fixes a bug caused by setting the default D_PAD drill size to a value
|
||||||
// other than 0 used to fix a bunch of debug assertions even though it is defined
|
// other than 0 used to fix a bunch of debug assertions even though it is defined
|
||||||
// as a through hole pad. Wouldn't a though hole pad with no drill be a surface
|
// as a through hole pad. Wouldn't a though hole pad with no drill be a surface
|
||||||
// mount pad?
|
// mount pad (or a conn pad which is a smd pad with no solder paste)?
|
||||||
if( pad->GetAttribute() != PAD_SMD )
|
if( ( pad->GetAttribute() != PAD_SMD ) && ( pad->GetAttribute() != PAD_CONN ) )
|
||||||
pad->SetDrillSize( drillSize );
|
pad->SetDrillSize( drillSize );
|
||||||
else
|
else
|
||||||
pad->SetDrillSize( wxSize( 0, 0 ) );
|
pad->SetDrillSize( wxSize( 0, 0 ) );
|
||||||
|
@ -2667,6 +2672,13 @@ ZONE_CONTAINER* PCB_PARSER::parseZONE_CONTAINER() throw( IO_ERROR, PARSE_ERROR )
|
||||||
if( pts.size() )
|
if( pts.size() )
|
||||||
zone->AddFilledPolysList( pts );
|
zone->AddFilledPolysList( pts );
|
||||||
|
|
||||||
|
// Ensure keepout does not have a net (which have no sense for a keepout zone)
|
||||||
|
if( zone->GetIsKeepout() )
|
||||||
|
{
|
||||||
|
zone->SetNet(0);
|
||||||
|
zone->SetNetName( wxEmptyString );
|
||||||
|
}
|
||||||
|
|
||||||
return zone.release();
|
return zone.release();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue