132 int aCollisionMask =
ITEM::ANY_T,
int aMaxIterations = 10 );
144 int aLayer = -1 )
const override;
147 int aLayer = -1 )
const override;
163 virtual const std::string
Format()
const override;
181 VIA( aPos,
LAYER_RANGE( aLayer, aLayer ), aDiameter, aDiameter / 2, aNet )
std::optional< BOX2I > OPT_BOX2I
Represent a contiguous set of PCB layers.
Base class for PNS router board items.
void SetLayers(const LAYER_RANGE &aLayers)
PnsKind Kind() const
Return the type (kind) of the item.
const LAYER_RANGE & Layers() const
Keep the router "world" - i.e.
OPT_BOX2I ChangedArea(const VIA *aOther) const
static bool ClassOf(const ITEM *aItem)
virtual VECTOR2I Anchor(int n) const override
void SetHole(const SHAPE_CIRCLE &aHole)
const VECTOR2I & Pos() const
const SHAPE * Shape() const override
Return the geometrical shape of the item.
const SHAPE_LINE_CHAIN HoleHull(int aClearance=0, int aWalkaroundThickness=0, int aLayer=-1) const override
const VIA_HANDLE MakeHandle() const
void SetDiameter(int aDiameter)
virtual const std::string Format() const override
bool PushoutForce(NODE *aNode, const VECTOR2I &aDirection, VECTOR2I &aForce, int aCollisionMask=ITEM::ANY_T, int aMaxIterations=10)
virtual int AnchorCount() const override
void SetIsFree(bool aIsFree)
void SetViaType(VIATYPE aViaType)
void SetPos(const VECTOR2I &aPos)
void SetDrill(int aDrill)
const SHAPE_LINE_CHAIN Hull(int aClearance=0, int aWalkaroundThickness=0, int aLayer=-1) const override
VIA(const VECTOR2I &aPos, const LAYER_RANGE &aLayers, int aDiameter, int aDrill, int aNet=-1, VIATYPE aViaType=VIATYPE::THROUGH)
const SHAPE_CIRCLE * Hole() const override
VIA * Clone() const override
Return a deep copy of the item.
VVIA(const VECTOR2I &aPos, int aLayer, int aDiameter, int aNet)
void SetRadius(int aRadius)
void SetCenter(const VECTOR2I &aCenter)
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
An abstract shape on 2D plane.
Push and Shove diff pair dimensions (gap) settings dialog.