From b12d0dfd67eceb909d9cc1af43ee3cd74d4a969e Mon Sep 17 00:00:00 2001 From: Seth Hillbrand Date: Mon, 29 Jan 2024 08:22:12 -0800 Subject: [PATCH] Fix pad offset removal vs hole offset Fixes https://gitlab.com/kicad/code/kicad/-/issues/16767 --- pcbnew/pcb_io/ipc2581/pcb_io_ipc2581.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pcbnew/pcb_io/ipc2581/pcb_io_ipc2581.cpp b/pcbnew/pcb_io/ipc2581/pcb_io_ipc2581.cpp index ce4b134e0d..81064e9c55 100644 --- a/pcbnew/pcb_io/ipc2581/pcb_io_ipc2581.cpp +++ b/pcbnew/pcb_io/ipc2581/pcb_io_ipc2581.cpp @@ -1648,6 +1648,7 @@ void PCB_IO_IPC2581::addPadStack( wxXmlNode* aPadNode, const PAD* aPad ) addAttribute( padStackHoleNode, "platingStatus", aPad->GetAttribute() == PAD_ATTRIB::PTH ? "PLATED" : "NONPLATED" ); addAttribute( padStackHoleNode, "plusTol", "0.0" ); addAttribute( padStackHoleNode, "minusTol", "0.0" ); + addXY( padStackHoleNode, aPad->GetOffset() ); } LSEQ layer_seq = aPad->GetLayerSet().Seq(); @@ -1663,8 +1664,6 @@ void PCB_IO_IPC2581::addPadStack( wxXmlNode* aPadNode, const PAD* aPad ) addAttribute( padStackPadDefNode, "layerRef", m_layer_name_map[layer] ); addAttribute( padStackPadDefNode, "padUse", "REGULAR" ); - addLocationNode( padStackPadDefNode, *aPad, true ); - if( aPad->HasHole() || !aPad->FlashLayer( layer ) ) { PCB_SHAPE shape( nullptr, SHAPE_T::CIRCLE );