Apply blind/buried via drawing to microvias.
This commit is contained in:
parent
5cbaefaa1f
commit
03c47e210c
|
@ -464,6 +464,9 @@ void VIA::ViewGetLayers( int aLayers[], int& aCount ) const
|
|||
|
||||
case VIATYPE::MICROVIA:
|
||||
aLayers[2] = LAYER_VIA_MICROVIA;
|
||||
aLayers[3] = m_Layer;
|
||||
aLayers[4] = m_BottomLayer;
|
||||
aCount += 2;
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
@ -326,11 +326,16 @@ void PCB_LAYER_WIDGET::ReFillRender()
|
|||
if( m_fp_editor_mode && !isAllowedInFpMode( renderRow.id ) )
|
||||
continue;
|
||||
|
||||
// Don't remove microvia and bblind vias if they're not allowed: that's only a DRC
|
||||
// setting (which might be set to ignore) and the user can add them irrespective of
|
||||
// the setting.
|
||||
/*
|
||||
if( renderRow.id == LAYER_VIA_MICROVIA && !settings.m_MicroViasAllowed )
|
||||
continue;
|
||||
|
||||
if( renderRow.id == LAYER_VIA_BBLIND && !settings.m_BlindBuriedViaAllowed )
|
||||
continue;
|
||||
*/
|
||||
|
||||
if( !renderRow.spacer )
|
||||
{
|
||||
|
|
|
@ -612,10 +612,11 @@ void PCB_PAINTER::draw( const VIA* aVia, int aLayer )
|
|||
m_gal->SetFillColor( color );
|
||||
}
|
||||
|
||||
if( aVia->GetViaType() == VIATYPE::BLIND_BURIED && aLayer != LAYER_VIAS_HOLES
|
||||
if( ( aVia->GetViaType() == VIATYPE::BLIND_BURIED || aVia->GetViaType() == VIATYPE::MICROVIA )
|
||||
&& aLayer != LAYER_VIAS_HOLES
|
||||
&& !m_pcbSettings.GetDrawIndividualViaLayers() )
|
||||
{
|
||||
// Outer circles of blind/buried vias are drawn in a special way to indicate the
|
||||
// Outer circles of blind/buried and micro-vias are drawn in a special way to indicate the
|
||||
// top and bottom layers
|
||||
PCB_LAYER_ID layerTop, layerBottom;
|
||||
aVia->LayerPair( &layerTop, &layerBottom );
|
||||
|
@ -629,7 +630,7 @@ void PCB_PAINTER::draw( const VIA* aVia, int aLayer )
|
|||
else if( aLayer == layerBottom )
|
||||
m_gal->DrawArc( center, radius, M_PI, 3.0 * M_PI / 2.0 );
|
||||
|
||||
else if( aLayer == LAYER_VIA_BBLIND )
|
||||
else if( aLayer == LAYER_VIA_BBLIND || aLayer == LAYER_VIA_MICROVIA )
|
||||
{
|
||||
m_gal->DrawArc( center, radius, M_PI / 2.0, M_PI );
|
||||
m_gal->DrawArc( center, radius, 3.0 * M_PI / 2.0, 2.0 * M_PI );
|
||||
|
|
Loading…
Reference in New Issue