SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
openswmmvis::transect::TransectProvider Class Reference

#include <transectprovider.h>

Inheritance diagram for openswmmvis::transect::TransectProvider:
Collaboration diagram for openswmmvis::transect::TransectProvider:

Signals

void nameChanged (QString prev, QString now)
 
void commentsChanged ()
 
void roughnessChanged ()
 
void bankStationsChanged ()
 
void encroachmentStationsChanged ()
 
void modifiersChanged ()
 
void pointsChanged (int firstIndex, int count)
 
void pointsInserted (int at, int count)
 
void pointsRemoved (int at, int count)
 
void mutationRejected (QString reason)
 

Public Member Functions

 TransectProvider (QString name, QObject *parent=nullptr)
 
 ~TransectProvider () override
 
QString name () const noexcept
 
QString comments () const noexcept
 
double nLeftBank () const noexcept
 
double nRightBank () const noexcept
 
double nChannel () const noexcept
 
double xLeftBank () const noexcept
 
double xRightBank () const noexcept
 
double xLeftEncroachment () const noexcept
 
double xRightEncroachment () const noexcept
 
double stationMultiplier () const noexcept
 
double elevationOffset () const noexcept
 
double meanderFactor () const noexcept
 
int pointCount () const noexcept
 
const TransectPointpointAt (int i) const
 
const QVector< TransectPoint > & points () const noexcept
 
QVector< QPair< double, double > > allPoints () const
 
void setName (QString newName)
 
void setComments (QString newComments)
 
void setRoughness (double nLeft, double nRight, double nChannel)
 
void setBankStations (double xLeft, double xRight)
 
void setEncroachmentStations (double xLeft, double xRight)
 
void setModifiers (double xFactor, double yFactor, double lengthFactor)
 
bool setAllPoints (QVector< TransectPoint > newPoints, QString *reasonOut=nullptr)
 Replace the entire station list. Validates strict-monotone stations before applying. Atomic.
 
bool setElevationAt (int i, double newElev, QString *reasonOut=nullptr)
 Edit elevation at index i; station stays put.
 
bool setPointAt (int i, double newStation, double newElev, QString *reasonOut=nullptr)
 Edit both station and elevation at index i. Validates that the new station still slots strictly between neighbours.
 
bool setPointLive (int i, double newStation, double newElev, bool *clamped=nullptr)
 Live drag variant: skips strict monotonicity by clamping the new station to lie in (prev + eps, next - eps). When the value was clamped, clamped is set true.
 
int insertPoint (double station, double elev, QString *reasonOut=nullptr)
 Insert one point. Returns the new index on success, -1 on collision / out-of-order.
 
void removePointsAt (QVector< int > indices)
 Remove points by index. Indices are deduplicated + sorted descending internally so the loop is safe.
 

Constructor & Destructor Documentation

◆ TransectProvider()

openswmmvis::transect::TransectProvider::TransectProvider ( QString  name,
QObject *  parent = nullptr 
)
explicit

◆ ~TransectProvider()

openswmmvis::transect::TransectProvider::~TransectProvider ( )
overridedefault

Member Function Documentation

◆ allPoints()

QVector< QPair< double, double > > openswmmvis::transect::TransectProvider::allPoints ( ) const

◆ bankStationsChanged

void openswmmvis::transect::TransectProvider::bankStationsChanged ( )
signal
Here is the caller graph for this function:

◆ comments()

QString openswmmvis::transect::TransectProvider::comments ( ) const
inlinenoexcept

◆ commentsChanged

void openswmmvis::transect::TransectProvider::commentsChanged ( )
signal

◆ elevationOffset()

double openswmmvis::transect::TransectProvider::elevationOffset ( ) const
inlinenoexcept

◆ encroachmentStationsChanged

void openswmmvis::transect::TransectProvider::encroachmentStationsChanged ( )
signal
Here is the caller graph for this function:

◆ insertPoint()

int openswmmvis::transect::TransectProvider::insertPoint ( double  station,
double  elev,
QString *  reasonOut = nullptr 
)

Insert one point. Returns the new index on success, -1 on collision / out-of-order.

Here is the caller graph for this function:

◆ meanderFactor()

double openswmmvis::transect::TransectProvider::meanderFactor ( ) const
inlinenoexcept

◆ modifiersChanged

void openswmmvis::transect::TransectProvider::modifiersChanged ( )
signal
Here is the caller graph for this function:

◆ mutationRejected

void openswmmvis::transect::TransectProvider::mutationRejected ( QString  reason)
signal

◆ name()

QString openswmmvis::transect::TransectProvider::name ( ) const
inlinenoexcept
Here is the caller graph for this function:

◆ nameChanged

void openswmmvis::transect::TransectProvider::nameChanged ( QString  prev,
QString  now 
)
signal

◆ nChannel()

double openswmmvis::transect::TransectProvider::nChannel ( ) const
inlinenoexcept

◆ nLeftBank()

double openswmmvis::transect::TransectProvider::nLeftBank ( ) const
inlinenoexcept

◆ nRightBank()

double openswmmvis::transect::TransectProvider::nRightBank ( ) const
inlinenoexcept

◆ pointAt()

const TransectPoint & openswmmvis::transect::TransectProvider::pointAt ( int  i) const
inline
Here is the caller graph for this function:

◆ pointCount()

int openswmmvis::transect::TransectProvider::pointCount ( ) const
inlinenoexcept

◆ points()

const QVector< TransectPoint > & openswmmvis::transect::TransectProvider::points ( ) const
inlinenoexcept
Here is the caller graph for this function:

◆ pointsChanged

void openswmmvis::transect::TransectProvider::pointsChanged ( int  firstIndex,
int  count 
)
signal
Here is the caller graph for this function:

◆ pointsInserted

void openswmmvis::transect::TransectProvider::pointsInserted ( int  at,
int  count 
)
signal
Here is the caller graph for this function:

◆ pointsRemoved

void openswmmvis::transect::TransectProvider::pointsRemoved ( int  at,
int  count 
)
signal
Here is the caller graph for this function:

◆ removePointsAt()

void openswmmvis::transect::TransectProvider::removePointsAt ( QVector< int >  indices)

Remove points by index. Indices are deduplicated + sorted descending internally so the loop is safe.

Here is the caller graph for this function:

◆ roughnessChanged

void openswmmvis::transect::TransectProvider::roughnessChanged ( )
signal
Here is the caller graph for this function:

◆ setAllPoints()

bool openswmmvis::transect::TransectProvider::setAllPoints ( QVector< TransectPoint newPoints,
QString *  reasonOut = nullptr 
)

Replace the entire station list. Validates strict-monotone stations before applying. Atomic.

◆ setBankStations()

void openswmmvis::transect::TransectProvider::setBankStations ( double  xLeft,
double  xRight 
)
Here is the caller graph for this function:

◆ setComments()

void openswmmvis::transect::TransectProvider::setComments ( QString  newComments)
Here is the caller graph for this function:

◆ setElevationAt()

bool openswmmvis::transect::TransectProvider::setElevationAt ( int  i,
double  newElev,
QString *  reasonOut = nullptr 
)

Edit elevation at index i; station stays put.

◆ setEncroachmentStations()

void openswmmvis::transect::TransectProvider::setEncroachmentStations ( double  xLeft,
double  xRight 
)
Here is the caller graph for this function:

◆ setModifiers()

void openswmmvis::transect::TransectProvider::setModifiers ( double  xFactor,
double  yFactor,
double  lengthFactor 
)
Here is the caller graph for this function:

◆ setName()

void openswmmvis::transect::TransectProvider::setName ( QString  newName)

◆ setPointAt()

bool openswmmvis::transect::TransectProvider::setPointAt ( int  i,
double  newStation,
double  newElev,
QString *  reasonOut = nullptr 
)

Edit both station and elevation at index i. Validates that the new station still slots strictly between neighbours.

◆ setPointLive()

bool openswmmvis::transect::TransectProvider::setPointLive ( int  i,
double  newStation,
double  newElev,
bool *  clamped = nullptr 
)

Live drag variant: skips strict monotonicity by clamping the new station to lie in (prev + eps, next - eps). When the value was clamped, clamped is set true.

Here is the caller graph for this function:

◆ setRoughness()

void openswmmvis::transect::TransectProvider::setRoughness ( double  nLeft,
double  nRight,
double  nChannel 
)
Here is the caller graph for this function:

◆ stationMultiplier()

double openswmmvis::transect::TransectProvider::stationMultiplier ( ) const
inlinenoexcept

◆ xLeftBank()

double openswmmvis::transect::TransectProvider::xLeftBank ( ) const
inlinenoexcept

◆ xLeftEncroachment()

double openswmmvis::transect::TransectProvider::xLeftEncroachment ( ) const
inlinenoexcept

◆ xRightBank()

double openswmmvis::transect::TransectProvider::xRightBank ( ) const
inlinenoexcept

◆ xRightEncroachment()

double openswmmvis::transect::TransectProvider::xRightEncroachment ( ) const
inlinenoexcept

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