diff --git a/3d-viewer/3d_canvas/create_3Dgraphic_brd_items.cpp b/3d-viewer/3d_canvas/create_3Dgraphic_brd_items.cpp index 6d642fd438..5f8748b034 100644 --- a/3d-viewer/3d_canvas/create_3Dgraphic_brd_items.cpp +++ b/3d-viewer/3d_canvas/create_3Dgraphic_brd_items.cpp @@ -794,11 +794,18 @@ void BOARD_ADAPTER::addShape( const PCB_TEXTBOX* aTextBox, CONTAINER_2D_BASE* aC void BOARD_ADAPTER::addTable( const PCB_TABLE* aTable, CONTAINER_2D_BASE* aContainer, const BOARD_ITEM* aOwner ) { - // JEY TODO: tables - // add borders + aTable->DrawBorders( + [&]( const VECTOR2I& ptA, const VECTOR2I& ptB, const STROKE_PARAMS& stroke ) + { + addROUND_SEGMENT_2D( aContainer, TO_SFVEC2F( ptA ), TO_SFVEC2F( ptB ), + TO_3DU( stroke.GetWidth() ), *aOwner ); + } ); for( PCB_TABLECELL* cell : aTable->GetCells() ) - addText( cell, aContainer, aOwner ); + { + if( cell->GetColSpan() > 0 && cell->GetRowSpan() > 0 ) + addText( cell, aContainer, aOwner ); + } } diff --git a/3d-viewer/3d_canvas/create_layer_items.cpp b/3d-viewer/3d_canvas/create_layer_items.cpp index 3d3e9d6d08..9fcacd2f28 100644 --- a/3d-viewer/3d_canvas/create_layer_items.cpp +++ b/3d-viewer/3d_canvas/create_layer_items.cpp @@ -940,7 +940,7 @@ void BOARD_ADAPTER::createLayers( REPORTER* aStatusReporter ) break; case PCB_TABLE_T: - // JEY TODO: tables + addTable( static_cast<PCB_TABLE*>( item ), layerContainer, item ); break; case PCB_DIM_ALIGNED_T: