mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-14 02:03:12 +02:00
3D viewer: fix some issues after layer numbering changes (round 2).
This commit is contained in:
parent
977d9e4e72
commit
02ec8acdb3
@ -374,6 +374,8 @@ void BOARD_ADAPTER::InitSettings( REPORTER* aStatusReporter, REPORTER* aWarningR
|
||||
if( !m_board || !m_board->IsFootprintHolder() )
|
||||
m_biuTo3Dunits *= 1.6f;
|
||||
|
||||
ReloadColorSettings();
|
||||
|
||||
m_boardBodyThickness3DU = DEFAULT_BOARD_THICKNESS * m_biuTo3Dunits;
|
||||
m_frontCopperThickness3DU = DEFAULT_COPPER_THICKNESS * m_biuTo3Dunits;
|
||||
m_backCopperThickness3DU = DEFAULT_COPPER_THICKNESS * m_biuTo3Dunits;
|
||||
@ -467,7 +469,19 @@ void BOARD_ADAPTER::InitSettings( REPORTER* aStatusReporter, REPORTER* aWarningR
|
||||
const float zpos_copperTop_back = m_layerZcoordTop[B_Cu];
|
||||
const float zpos_copperTop_front = m_layerZcoordTop[F_Cu];
|
||||
|
||||
// calculate z position for each non copper layer
|
||||
// Fill not copper layers zpos with a dummy position
|
||||
// (m_layerZcoordTop[B_Cu]with a small margin)
|
||||
// Some important layer position will be set later
|
||||
for( int layer_id = 0; layer_id < PCB_LAYER_ID_COUNT; layer_id++ )
|
||||
{
|
||||
if( IsCopperLayer( (PCB_LAYER_ID)layer_id ) )
|
||||
continue;
|
||||
|
||||
m_layerZcoordBottom[(PCB_LAYER_ID)layer_id] = zpos_copperTop_back - 2.0f * zpos_offset;
|
||||
m_layerZcoordTop[(PCB_LAYER_ID)layer_id] = m_layerZcoordBottom[(PCB_LAYER_ID)layer_id] - m_backCopperThickness3DU;
|
||||
}
|
||||
|
||||
// calculate z position for each technical layer
|
||||
// Solder mask and Solder paste have the same Z position
|
||||
for( PCB_LAYER_ID layer_id : { B_Adhes, B_Mask, B_Paste, F_Adhes, F_Mask, F_Paste, B_SilkS, F_SilkS } )
|
||||
{
|
||||
|
@ -218,7 +218,7 @@ void BOARD_ADAPTER::createLayers( REPORTER* aStatusReporter )
|
||||
layer_ids.clear();
|
||||
layer_ids.reserve( m_copperLayersCount );
|
||||
|
||||
for( PCB_LAYER_ID layer : LAYER_RANGE( B_Cu, F_Cu, m_copperLayersCount ) )
|
||||
for( PCB_LAYER_ID layer : LAYER_RANGE( F_Cu,B_Cu, m_copperLayersCount) )
|
||||
{
|
||||
if( !Is3dLayerEnabled( layer, visibilityFlags ) ) // Skip non enabled layers
|
||||
continue;
|
||||
|
Loading…
x
Reference in New Issue
Block a user