20#ifndef LIBREPCB_CORE_BOARDNETSEGMENTSPLITTER_H
21#define LIBREPCB_CORE_BOARDNETSEGMENTSPLITTER_H
26#include "../../geometry/junction.h"
27#include "../../geometry/trace.h"
28#include "../../geometry/via.h"
65 const
Point& pos) noexcept;
68 void addVia(const
Via& via,
bool replaceByJunctions) noexcept;
78 const
Layer& layer) noexcept;
82 QList<
std::shared_ptr<
Via>>& availableVias,
The BoardNetSegmentSplitter class.
Definition boardnetsegmentsplitter.h:48
TraceList mTraces
Definition boardnetsegmentsplitter.h:91
void addPad(const BoardPadData &pad, bool replaceByJunctions) noexcept
Definition boardnetsegmentsplitter.cpp:59
TraceAnchor replaceAnchor(const TraceAnchor &anchor, const Layer &layer) noexcept
Definition boardnetsegmentsplitter.cpp:123
JunctionList mJunctions
Definition boardnetsegmentsplitter.h:88
QHash< QPair< TraceAnchor, const Layer * >, TraceAnchor > mReplacedAnchors
Definition boardnetsegmentsplitter.h:94
QList< Segment > split() noexcept
Definition boardnetsegmentsplitter.cpp:85
QHash< TraceAnchor, Point > mAnchorsToReplace
Definition boardnetsegmentsplitter.h:93
BoardNetSegmentSplitter() noexcept
Definition boardnetsegmentsplitter.cpp:39
ViaList mVias
Definition boardnetsegmentsplitter.h:90
void findConnectedLinesAndPoints(const TraceAnchor &anchor, QList< std::shared_ptr< BoardPadData > > &availablePads, QList< std::shared_ptr< Via > > &availableVias, QList< std::shared_ptr< Trace > > &availableTraces, Segment &segment) noexcept
Definition boardnetsegmentsplitter.cpp:141
void addTrace(const Trace &trace) noexcept
Definition boardnetsegmentsplitter.cpp:77
BoardPadDataList mPads
Definition boardnetsegmentsplitter.h:89
void addJunction(const Junction &junction) noexcept
Definition boardnetsegmentsplitter.cpp:55
void addVia(const Via &via, bool replaceByJunctions) noexcept
Definition boardnetsegmentsplitter.cpp:68
void replaceFootprintPadByJunctions(const TraceAnchor &anchor, const Point &pos) noexcept
Definition boardnetsegmentsplitter.cpp:50
The BoardPadData class represents a pad in a board.
Definition boardpaddata.h:43
The Junction class represents the connection point between netlines or traces.
Definition junction.h:47
The Layer class provides all supported geometry layers.
Definition layer.h:42
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition point.h:78
The TraceAnchor class.
Definition trace.h:45
The Trace class represents a trace within a board.
Definition trace.h:123
The Via class represents a via of a board.
Definition via.h:55
Definition occmodel.cpp:77
Definition boardnetsegmentsplitter.h:51
BoardPadDataList pads
Definition boardnetsegmentsplitter.h:53
JunctionList junctions
Definition boardnetsegmentsplitter.h:52
TraceList traces
Definition boardnetsegmentsplitter.h:55
ViaList vias
Definition boardnetsegmentsplitter.h:54