Loading change_log.txt +12 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,18 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with email address. 2008-oct-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew: More about copper zones filled without grid (by polygons) Currently for tests only (work in progress). now working thermal reliefs. texts on copper zones. Removing insulated copper islands. currently : not implemented: trapezoidal pads 2008-oct-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew: Loading include/id.h +1 −1 Original line number Diff line number Diff line Loading @@ -570,7 +570,7 @@ enum main_id { ID_POPUP_PCB_PLACE_ZONE_OUTLINES, ID_POPUP_PCB_DRAG_ZONE_OUTLINE_SEGMENT, ID_POPUP_PCB_PLACE_DRAGGED_ZONE_OUTLINE_SEGMENT, ID_POPUP_ZONE_UNUSED3, ID_POPUP_PCB_REMOVE_FILLED_AREAS, ID_POPUP_ZONE_UNUSED4, ID_POPUP_PCB_DELETE_MARKER, Loading pcbnew/CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -143,6 +143,7 @@ set(PCBNEW_SRCS zones_by_polygon.cpp zones_convert_brd_items_to_polygons.cpp zone_filling_algorithm.cpp zones_polygons_insulated_copper_islands.cpp zones_test_and_combine_areas.cpp ) Loading pcbnew/class_zone.h +7 −1 Original line number Diff line number Diff line Loading @@ -101,6 +101,12 @@ public: EDA_Rect GetBoundingBox(); /** * Function Test_For_Copper_Island_And_Remove__Insulated_Islands * Remove insulated copper islands found in m_FilledPolysList. * @param aPcb = the board to analyse */ void Test_For_Copper_Island_And_Remove_Insulated_Islands( BOARD* aPcb ); /** * Function DrawWhileCreateOutline Loading pcbnew/edit.cpp +17 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_STOP_CURRENT_EDGE_ZONE: case ID_POPUP_PCB_DELETE_ZONE_LAST_CREATED_CORNER: case ID_POPUP_PCB_FILL_ALL_ZONES: case ID_POPUP_PCB_REMOVE_FILLED_AREAS: case ID_POPUP_PCB_PLACE_ZONE_CORNER: case ID_POPUP_PCB_PLACE_ZONE_OUTLINES: case ID_POPUP_PCB_EDIT_ZONE_PARAMS: Loading Loading @@ -543,6 +544,22 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) Fill_All_Zones( &dc ); break; case ID_POPUP_PCB_REMOVE_FILLED_AREAS: // Remove all zones : if( m_Pcb->m_Zone ) { m_Pcb->m_Zone->DeleteStructList(); m_Pcb->m_Zone = NULL; m_Pcb->m_NbSegmZone = 0; } for( int ii = 0; ii < m_Pcb->GetAreaCount(); ii++ ) { ZONE_CONTAINER* zone_container = m_Pcb->GetArea( ii ); zone_container->m_FilledPolysList.clear();; } GetScreen()->SetModify(); DrawPanel->Refresh(); break; case ID_POPUP_PCB_FILL_ZONE: DrawPanel->MouseToCursorSchema(); Fill_Zone( &dc, (ZONE_CONTAINER*) GetCurItem() ); Loading Loading
change_log.txt +12 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,18 @@ Started 2007-June-11 Please add newer entries at the top, list the date and your name with email address. 2008-oct-11 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew: More about copper zones filled without grid (by polygons) Currently for tests only (work in progress). now working thermal reliefs. texts on copper zones. Removing insulated copper islands. currently : not implemented: trapezoidal pads 2008-oct-07 UPDATE Jean-Pierre Charras <jean-pierre.charras@inpg.fr> ================================================================================ +pcbnew: Loading
include/id.h +1 −1 Original line number Diff line number Diff line Loading @@ -570,7 +570,7 @@ enum main_id { ID_POPUP_PCB_PLACE_ZONE_OUTLINES, ID_POPUP_PCB_DRAG_ZONE_OUTLINE_SEGMENT, ID_POPUP_PCB_PLACE_DRAGGED_ZONE_OUTLINE_SEGMENT, ID_POPUP_ZONE_UNUSED3, ID_POPUP_PCB_REMOVE_FILLED_AREAS, ID_POPUP_ZONE_UNUSED4, ID_POPUP_PCB_DELETE_MARKER, Loading
pcbnew/CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -143,6 +143,7 @@ set(PCBNEW_SRCS zones_by_polygon.cpp zones_convert_brd_items_to_polygons.cpp zone_filling_algorithm.cpp zones_polygons_insulated_copper_islands.cpp zones_test_and_combine_areas.cpp ) Loading
pcbnew/class_zone.h +7 −1 Original line number Diff line number Diff line Loading @@ -101,6 +101,12 @@ public: EDA_Rect GetBoundingBox(); /** * Function Test_For_Copper_Island_And_Remove__Insulated_Islands * Remove insulated copper islands found in m_FilledPolysList. * @param aPcb = the board to analyse */ void Test_For_Copper_Island_And_Remove_Insulated_Islands( BOARD* aPcb ); /** * Function DrawWhileCreateOutline Loading
pcbnew/edit.cpp +17 −0 Original line number Diff line number Diff line Loading @@ -68,6 +68,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_STOP_CURRENT_EDGE_ZONE: case ID_POPUP_PCB_DELETE_ZONE_LAST_CREATED_CORNER: case ID_POPUP_PCB_FILL_ALL_ZONES: case ID_POPUP_PCB_REMOVE_FILLED_AREAS: case ID_POPUP_PCB_PLACE_ZONE_CORNER: case ID_POPUP_PCB_PLACE_ZONE_OUTLINES: case ID_POPUP_PCB_EDIT_ZONE_PARAMS: Loading Loading @@ -543,6 +544,22 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) Fill_All_Zones( &dc ); break; case ID_POPUP_PCB_REMOVE_FILLED_AREAS: // Remove all zones : if( m_Pcb->m_Zone ) { m_Pcb->m_Zone->DeleteStructList(); m_Pcb->m_Zone = NULL; m_Pcb->m_NbSegmZone = 0; } for( int ii = 0; ii < m_Pcb->GetAreaCount(); ii++ ) { ZONE_CONTAINER* zone_container = m_Pcb->GetArea( ii ); zone_container->m_FilledPolysList.clear();; } GetScreen()->SetModify(); DrawPanel->Refresh(); break; case ID_POPUP_PCB_FILL_ZONE: DrawPanel->MouseToCursorSchema(); Fill_Zone( &dc, (ZONE_CONTAINER*) GetCurItem() ); Loading