42 virtual bool Run()
override;
44 virtual const wxString
GetName()
const override {
return wxT(
"via_stitch_overlap" ); }
52 REPORT_AUX( wxT(
"Via-stitch overlap tests not run." ) );
56 if( !
reportPhase(
_(
"Checking via-stitch zone overlaps..." ) ) )
60 std::vector<PCB_VIA_STITCH*> stitches;
65 stitches.push_back( stitch );
68 for(
size_t i = 0; i < stitches.size(); ++i )
78 for(
size_t j = i + 1; j < stitches.size(); ++j )
92 drcItem->SetItems( a, b );
constexpr Vec Centre() const
static std::shared_ptr< DRC_ITEM > Create(int aErrorCode)
Constructs a DRC_ITEM for the given error code.
virtual bool Run() override
Run this provider against the given PCB with configured options (if any).
DRC_TEST_PROVIDER_VIA_STITCH()=default
virtual const wxString GetName() const override
virtual ~DRC_TEST_PROVIDER_VIA_STITCH()=default
virtual bool reportPhase(const wxString &aStageName)
void reportViolation(std::shared_ptr< DRC_ITEM > &item, const VECTOR2I &aMarkerPos, int aMarkerLayer, const std::function< void(PCB_MARKER *)> &aPathGenerator=[](PCB_MARKER *){})
const SHAPE_POLY_SET & Outline() const
PCB_LAYER_ID GetLayer() const override
Return the primary layer this item is on.
Represent a set of closed polygons.
void BooleanIntersection(const SHAPE_POLY_SET &b)
Perform boolean polyset intersection.
int OutlineCount() const
Return the number of outlines in the set.
const BOX2I BBox(int aClearance=0) const override
Compute a bounding box of the shape, with a margin of aClearance a collision.
@ DRCE_VIA_STITCH_OVERLAP
static DRC_REGISTER_TEST_PROVIDER< DRC_TEST_PROVIDER_ANNULAR_WIDTH > dummy
VECTOR2< int32_t > VECTOR2I