20#ifndef LIBREPCB_CORE_SCHEMATICNETSEGMENTSPLITTER_H
21#define LIBREPCB_CORE_SCHEMATICNETSEGMENTSPLITTER_H
26#include "../../geometry/junction.h"
27#include "../../geometry/netlabel.h"
28#include "../../geometry/netline.h"
62 bool replaceByJunction = false) noexcept;
80 QList<
Segment>& segments) const noexcept;
The Junction class represents the connection point between netlines or traces.
Definition: junction.h:47
The Length class is used to represent a length (for example 12.75 millimeters)
Definition: length.h:83
The NetLabel class represents a net text label of a schematic.
Definition: netlabel.h:47
The NetLineAnchor class.
Definition: netline.h:44
The NetLine class represents a net line within a schematic.
Definition: netline.h:109
The Point class is used to represent a point/coordinate/vector, for example (1.2mm; 5....
Definition: point.h:79
The SchematicNetSegmentSplitter class.
Definition: schematicnetsegmentsplitter.h:45
NetLineList mNetLines
Definition: schematicnetsegmentsplitter.h:87
SchematicNetSegmentSplitter() noexcept
Definition: schematicnetsegmentsplitter.cpp:39
Length getDistanceBetweenNetLabelAndNetSegment(const NetLabel &netlabel, const Segment &netsegment) const noexcept
Definition: schematicnetsegmentsplitter.cpp:156
QHash< NetLineAnchor, Point > mPinPositions
Definition: schematicnetsegmentsplitter.h:91
JunctionList mJunctions
Definition: schematicnetsegmentsplitter.h:86
Point getAnchorPosition(const NetLineAnchor &anchor) const noexcept
Definition: schematicnetsegmentsplitter.cpp:172
NetLabelList mNetLabels
Definition: schematicnetsegmentsplitter.h:88
QList< Segment > split() noexcept
Definition: schematicnetsegmentsplitter.cpp:82
NetLineAnchor replacePinAnchor(const NetLineAnchor &anchor) noexcept
Definition: schematicnetsegmentsplitter.cpp:107
void addSymbolPin(const NetLineAnchor &anchor, const Point &pos, bool replaceByJunction=false) noexcept
Definition: schematicnetsegmentsplitter.cpp:50
void addNetLabelToNearestNetSegment(const NetLabel &netlabel, QList< Segment > &segments) const noexcept
Definition: schematicnetsegmentsplitter.cpp:138
QHash< NetLineAnchor, NetLineAnchor > mPinAnchorsToReplace
Definition: schematicnetsegmentsplitter.h:90
void addNetLabel(const NetLabel &netlabel) noexcept
Definition: schematicnetsegmentsplitter.cpp:76
void addNetLine(const NetLine &netline) noexcept
Definition: schematicnetsegmentsplitter.cpp:69
void findConnectedLinesAndPoints(const NetLineAnchor &anchor, NetLineList &availableNetLines, Segment &segment) noexcept
Definition: schematicnetsegmentsplitter.cpp:112
void addJunction(const Junction &junction) noexcept
Definition: schematicnetsegmentsplitter.cpp:64
Definition: occmodel.cpp:77
Definition: schematicnetsegmentsplitter.h:48
JunctionList junctions
Definition: schematicnetsegmentsplitter.h:49
NetLineList netlines
Definition: schematicnetsegmentsplitter.h:50
NetLabelList netlabels
Definition: schematicnetsegmentsplitter.h:51