Represent a set of meanders fitted over a single or two lines.
More...
#include <pns_meander.h>
|
| | 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.
|
| |
| void | AddArc (const SHAPE_ARC &aArc1, const SHAPE_ARC &aArc2=SHAPE_ARC()) |
| | Create a dummy meander shape representing an arc corner.
|
| |
| void | AddArcAndPt (const SHAPE_ARC &aArc1, const VECTOR2I &aPt2) |
| | Create a dummy meander shape representing an arc corner.
|
| |
| void | AddPtAndArc (const VECTOR2I &aPt1, const SHAPE_ARC &aArc2) |
| | Create a dummy meander shape representing an arc corner.
|
| |
| void | AddMeander (MEANDER_SHAPE *aShape) |
| | Add a new meander shape to the meandered line.
|
| |
|
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.
|
| |
| void | SetBaselineOffset (int aOffset) |
| | Set the parallel offset between the base segment and the meandered line.
|
| |
| 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.
|
| |
| const MEANDER_SETTINGS & | Settings () const |
| |
Represent a set of meanders fitted over a single or two lines.
◆ MEANDERED_LINE()
- Parameters
-
| aPlacer | the meander placer instance |
| aIsDual | when true, the meanders are generated for two coupled lines |
◆ AddArc()
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
- Parameters
-
| aArc1 | Arc shape on the 1st line. |
| aArc2 | Arc shape on the 2nd line (if m_dual == true). |
◆ AddArcAndPt()
| void PNS::MEANDERED_LINE::AddArcAndPt |
( |
const SHAPE_ARC & |
aArc1, |
|
|
const VECTOR2I & |
aPt2 |
|
) |
| |
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
- Parameters
-
| aArc1 | Arc shape on the 1st line. |
| aPt2 | corner point of the 2nd line (if m_dual == true). |
◆ AddCorner()
Create a dummy meander shape representing a line corner.
Used to define the starts/ends of meandered segments.
- Parameters
-
| aA | corner point of the 1st line. |
| aB | corner point of the 2nd line (if m_dual == true). |
◆ AddMeander()
Add a new meander shape to the meandered line.
- Parameters
-
| aShape | the meander shape to add |
◆ AddPtAndArc()
| void PNS::MEANDERED_LINE::AddPtAndArc |
( |
const VECTOR2I & |
aPt1, |
|
|
const SHAPE_ARC & |
aArc2 |
|
) |
| |
Create a dummy meander shape representing an arc corner.
Allows representing existing arc tracks so they can be reconstructed after length tuning.
- Parameters
-
| aPt1 | corner point of the 1st line. |
| aArc2 | Arc shape on the 2nd line (if m_dual == true). |
◆ CheckSelfIntersections()
| 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.
- Parameters
-
| aShape | the shape to check. |
| aClearance | clearance value. |
- Returns
- true, if the meander shape is not colliding.
◆ Meanders()
| std::vector< MEANDER_SHAPE * > & PNS::MEANDERED_LINE::Meanders |
( |
| ) |
|
|
inline |
- Returns
- set of meander shapes for this line.
◆ MeanderSegment()
| 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.
- Parameters
-
| 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. |
◆ SetBaselineOffset()
| void PNS::MEANDERED_LINE::SetBaselineOffset |
( |
int |
aOffset | ) |
|
|
inline |
Set the parallel offset between the base segment and the meandered line.
Used for dual meanders (diff pair) only.
- Parameters
-
◆ Settings()
- Returns
- the current meandering settings.
The documentation for this class was generated from the following files:
- 3rd_party/router/router/pns_meander.h
- 3rd_party/router/router/pns_meander.cpp