LibrePCB Developers Documentation
SchematicNetSegmentSplitter Class Referencefinal

The SchematicNetSegmentSplitter class. More...

#include <schematicnetsegmentsplitter.h>

+ Collaboration diagram for SchematicNetSegmentSplitter:

Classes

struct  Segment
 

Public Member Functions

 SchematicNetSegmentSplitter () noexcept
 
 SchematicNetSegmentSplitter (const SchematicNetSegmentSplitter &other)=delete
 
 ~SchematicNetSegmentSplitter () noexcept
 
void addSymbolPin (const NetLineAnchor &anchor, const Point &pos, bool replaceByJunction=false) noexcept
 
void addJunction (const Junction &junction) noexcept
 
void addNetLine (const NetLine &netline) noexcept
 
void addNetLabel (const NetLabel &netlabel) noexcept
 
QList< Segmentsplit () noexcept
 
SchematicNetSegmentSplitteroperator= (const SchematicNetSegmentSplitter &rhs)=delete
 

Private Member Functions

NetLineAnchor replacePinAnchor (const NetLineAnchor &anchor) noexcept
 
void findConnectedLinesAndPoints (const NetLineAnchor &anchor, NetLineList &availableNetLines, Segment &segment) noexcept
 
void addNetLabelToNearestNetSegment (const NetLabel &netlabel, QList< Segment > &segments) const noexcept
 
Length getDistanceBetweenNetLabelAndNetSegment (const NetLabel &netlabel, const Segment &netsegment) const noexcept
 
Point getAnchorPosition (const NetLineAnchor &anchor) const noexcept
 

Private Attributes

JunctionList mJunctions
 
NetLineList mNetLines
 
NetLabelList mNetLabels
 
QHash< NetLineAnchor, NetLineAnchormPinAnchorsToReplace
 
QHash< NetLineAnchor, PointmPinPositions
 

Detailed Description

Constructor & Destructor Documentation

◆ SchematicNetSegmentSplitter() [1/2]

◆ SchematicNetSegmentSplitter() [2/2]

◆ ~SchematicNetSegmentSplitter()

Member Function Documentation

◆ addSymbolPin()

void addSymbolPin ( const NetLineAnchor anchor,
const Point pos,
bool  replaceByJunction = false 
)
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ addJunction()

void addJunction ( const Junction junction)
noexcept
+ Here is the caller graph for this function:

◆ addNetLine()

void addNetLine ( const NetLine netline)
noexcept
+ Here is the caller graph for this function:

◆ addNetLabel()

void addNetLabel ( const NetLabel netlabel)
noexcept
+ Here is the caller graph for this function:

◆ split()

QList< SchematicNetSegmentSplitter::Segment > split ( )
noexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator=()

SchematicNetSegmentSplitter & operator= ( const SchematicNetSegmentSplitter rhs)
delete

◆ replacePinAnchor()

NetLineAnchor replacePinAnchor ( const NetLineAnchor anchor)
privatenoexcept

◆ findConnectedLinesAndPoints()

void findConnectedLinesAndPoints ( const NetLineAnchor anchor,
NetLineList availableNetLines,
Segment segment 
)
privatenoexcept
+ Here is the caller graph for this function:

◆ addNetLabelToNearestNetSegment()

void addNetLabelToNearestNetSegment ( const NetLabel netlabel,
QList< Segment > &  segments 
) const
privatenoexcept
+ Here is the caller graph for this function:

◆ getDistanceBetweenNetLabelAndNetSegment()

Length getDistanceBetweenNetLabelAndNetSegment ( const NetLabel netlabel,
const Segment netsegment 
) const
privatenoexcept
+ Here is the call graph for this function:

◆ getAnchorPosition()

Point getAnchorPosition ( const NetLineAnchor anchor) const
privatenoexcept

Member Data Documentation

◆ mJunctions

JunctionList mJunctions
private

◆ mNetLines

NetLineList mNetLines
private

◆ mNetLabels

NetLabelList mNetLabels
private

◆ mPinAnchorsToReplace

QHash<NetLineAnchor, NetLineAnchor> mPinAnchorsToReplace
private

◆ mPinPositions

QHash<NetLineAnchor, Point> mPinPositions
private

The documentation for this class was generated from the following files: