23 #ifndef __PNS_MEANDER_PLACER_BASE_H 24 #define __PNS_MEANDER_PLACER_BASE_H 143 long long int aTolerance = 0 )
const;
172 #endif // __PNS_MEANDER_PLACER_BASE_H int GetTotalPadToDieLength(const LINE &aLine) const
Base class for Single trace & Differential pair meandering tools, as both of them share a lot of code...
Keep the router "world" - i.e.
The geometry of a single meander.
virtual const wxString TuningInfo(EDA_UNITS aUnits) const =0
Return a string describing the status and length of the tuned traces.
MEANDER_PLACER_BASE(ROUTER *aRouter)
virtual int Clearance()
Return the clearance of the track(s) being length tuned.
Represents a track on a PCB, connecting two non-trivial joints (that is, vias, pads,...
Dimensions for the meandering algorithm.
virtual bool CheckFit(MEANDER_SHAPE *aShape)
Checks if it's OK to place the shape aShape (i.e.
virtual void UpdateSettings(const MEANDER_SETTINGS &aSettings)
TUNING_STATUS
< Result of the length tuning operation
virtual TUNING_STATUS TuningStatus() const =0
Return the tuning status (too short, too long, etc.) of the trace(s) being tuned.
int m_currentWidth
Meander settings.
int m_padToDieLength
Width of the meandered trace(s).
long long int lineLength(const ITEM_SET &aLine) const
Calculate the total length of the line represented by an item set (tracks and vias)
NODE * m_world
Total length added by pad to die size.
void tuneLineLength(MEANDERED_LINE &aTuned, long long int aElongation)
Take a set of meanders in aTuned and tunes their length to extend the original line length by aElonga...
virtual void SpacingStep(int aSign)
Increase/decrease the current meandering spacing by one step.
VECTOR2I getSnappedStartPoint(LINKED_ITEM *aStartItem, VECTOR2I aStartPoint)
Represent a set of meanders fitted over a single or two lines.
MEANDER_SETTINGS m_settings
The current end point.
Represent a polyline containing arcs as well as line segments: A chain of connected line and/or arc s...
int compareWithTolerance(long long int aValue, long long int aExpected, long long int aTolerance=0) const
Compare aValue against aExpected with given tolerance.
virtual void AmplitudeStep(int aSign)
Increase/decreases the current meandering amplitude by one step.
virtual ~MEANDER_PLACER_BASE()
Push and Shove diff pair dimensions (gap) settings dialog.
virtual const MEANDER_SETTINGS & MeanderSettings() const
Return the current meandering configuration.
void cutTunedLine(const SHAPE_LINE_CHAIN &aOrigin, const VECTOR2I &aTuneStart, const VECTOR2I &aCursorPos, SHAPE_LINE_CHAIN &aPre, SHAPE_LINE_CHAIN &aTuned, SHAPE_LINE_CHAIN &aPost)
Extract the part of a track to be meandered, depending on the starting point and the cursor position.