|
Horizon
|
Represent a set of meanders fitted over a single or two lines. More...
#include <pns_meander.h>
Public Member Functions | |
| MEANDERED_LINE (MEANDER_PLACER_BASE *aPlacer, bool aIsDual=false) | |
| void | AddCorner (const VECTOR2I &aA, const VECTOR2I &aB=VECTOR2I(0, 0)) |
| Create a dummy meander shape representing a line corner. More... | |
| void | AddArc (const SHAPE_ARC &aArc1, const SHAPE_ARC &aArc2=SHAPE_ARC()) |
| Create a dummy meander shape representing an arc corner. More... | |
| void | AddArcAndPt (const SHAPE_ARC &aArc1, const VECTOR2I &aPt2) |
| Create a dummy meander shape representing an arc corner. More... | |
| void | AddPtAndArc (const VECTOR2I &aPt1, const SHAPE_ARC &aArc2) |
| Create a dummy meander shape representing an arc corner. More... | |
| void | AddMeander (MEANDER_SHAPE *aShape) |
| Add a new meander shape to the meandered line. More... | |
| void | Clear () |
| Clear the line geometry, removing all corners and meanders. | |
| void | SetWidth (int aWidth) |
| Set the line width. | |
| void | MeanderSegment (const SEG &aSeg, bool aSide, int aBaseIndex=0) |
| Fit maximum amplitude meanders on a given segment and adds to the current line. More... | |
| void | SetBaselineOffset (int aOffset) |
| Set the parallel offset between the base segment and the meandered line. More... | |
| std::vector< MEANDER_SHAPE * > & | Meanders () |
| bool | CheckSelfIntersections (MEANDER_SHAPE *aShape, int aClearance) |
| Check if the given shape is intersecting with any other meander in the current line. More... | |
| const MEANDER_SETTINGS & | Settings () const |
Represent a set of meanders fitted over a single or two lines.
|
inline |
| aPlacer | the meander placer instance |
| aIsDual | when true, the meanders are generated for two coupled lines |
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
| aArc1 | Arc shape on the 1st line. |
| aArc2 | Arc shape on the 2nd line (if m_dual == true). |
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
| aArc1 | Arc shape on the 1st line. |
| aPt2 | corner point of the 2nd line (if m_dual == true). |
Create a dummy meander shape representing a line corner.
Used to define the starts/ends of meandered segments.
| aA | corner point of the 1st line. |
| aB | corner point of the 2nd line (if m_dual == true). |
| void PNS::MEANDERED_LINE::AddMeander | ( | MEANDER_SHAPE * | aShape | ) |
Add a new meander shape to the meandered line.
| aShape | the meander shape to add |
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
| aPt1 | corner point of the 1st line. |
| aArc2 | Arc shape on the 2nd line (if m_dual == true). |
| bool PNS::MEANDERED_LINE::CheckSelfIntersections | ( | MEANDER_SHAPE * | aShape, |
| int | aClearance | ||
| ) |
Check if the given shape is intersecting with any other meander in the current line.
| aShape | the shape to check. |
| aClearance | clearance value. |
|
inline |
| void PNS::MEANDERED_LINE::MeanderSegment | ( | const SEG & | aSeg, |
| bool | aSide, | ||
| int | aBaseIndex = 0 |
||
| ) |
Fit maximum amplitude meanders on a given segment and adds to the current line.
| aSeg | the base segment to meander. |
| aSide | Side to start meandering the segment. True=left, False=Right |
| aBaseIndex | index of the base segment in the original line. |
|
inline |
Set the parallel offset between the base segment and the meandered line.
Used for dual meanders (diff pair) only.
| aOffset | the offset. |
| const MEANDER_SETTINGS & PNS::MEANDERED_LINE::Settings | ( | ) | const |