Hi, Here's a patch to draw the zone hatching in GAL.
The hatching is already contained within the ZONE_CONTAINER objects, so this patch just regenerates the hatching at opportune times, and renders it when the zone is drawn. Cheers, John
From 9c9a512d0490c9b7776c4f54b625cd42acfbe070 Mon Sep 17 00:00:00 2001 From: John Beard <john.j.be...@gmail.com> Date: Fri, 24 Feb 2017 20:26:25 +0800 Subject: [PATCH] Draw zone hatching in GAL This just uses the same hatch lines that are built into the zone as legacy. They are always drawn, even when there is a fill, as if the fill doesn't reach the corners, the hatches can be seen. Fixes: lp:1487043 * https://bugs.launchpad.net/kicad/+bug/1487043 --- pcbnew/pcb_painter.cpp | 6 ++++++ pcbnew/tools/drawing_tool.cpp | 1 + pcbnew/tools/point_editor.cpp | 2 ++ 3 files changed, 9 insertions(+) diff --git a/pcbnew/pcb_painter.cpp b/pcbnew/pcb_painter.cpp index 24fa470f1..b0b170a8c 100644 --- a/pcbnew/pcb_painter.cpp +++ b/pcbnew/pcb_painter.cpp @@ -966,6 +966,12 @@ void PCB_PAINTER::draw( const ZONE_CONTAINER* aZone ) m_gal->DrawPolyline( corners ); corners.clear(); } + + for( unsigned ic = 0; ic < polygon->m_HatchLines.size(); ic++ ) + { + auto& hatchLine = polygon->m_HatchLines[ic]; + m_gal->DrawLine( hatchLine.m_Start, hatchLine.m_End ); + } } // Draw the filling diff --git a/pcbnew/tools/drawing_tool.cpp b/pcbnew/tools/drawing_tool.cpp index fea754ecd..5bb24a429 100644 --- a/pcbnew/tools/drawing_tool.cpp +++ b/pcbnew/tools/drawing_tool.cpp @@ -1440,6 +1440,7 @@ int DRAWING_TOOL::drawZone( bool aKeepout, ZONE_MODE aMode ) zone->Outline()->CloseLastContour(); zone->Outline()->RemoveNullSegments(); + zone->Outline()->Hatch(); if( !aKeepout ) static_cast<PCB_EDIT_FRAME*>( m_frame )->Fill_Zone( zone.get() ); diff --git a/pcbnew/tools/point_editor.cpp b/pcbnew/tools/point_editor.cpp index 7e91c7626..b62e30528 100644 --- a/pcbnew/tools/point_editor.cpp +++ b/pcbnew/tools/point_editor.cpp @@ -469,6 +469,8 @@ void POINT_EDITOR::updateItem() const outline->SetY( i, point.y ); } + outline->Hatch(); + break; } -- 2.11.0
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp