![]() |
Eclipse SUMO - Simulation of Urban MObility
|
struct for pack all variables related with geometry of elemements divided in segments More...
#include <GNEGeometry.h>
Data Structures | |
class | Segment |
struct used for represent segments of element geometry More... | |
class | SegmentToUpdate |
struct used for represent segments that must be updated More... | |
Public Member Functions | |
const Segment & | back () const |
back segment More... | |
std::vector< Segment >::const_iterator | begin () const |
begin iterator More... | |
void | clearSegmentGeometry () |
clear element geometry More... | |
std::vector< Segment >::const_iterator | end () const |
end iterator More... | |
const Segment & | front () const |
front segment More... | |
Boundary | getBoxBoundary () const |
Returns a boundary enclosing all segments. More... | |
const Position & | getFirstPosition () const |
get first position (or Invalid position if segments are empty) More... | |
double | getFirstRotation () const |
get first rotation (or Invalid position if segments are empty) More... | |
const Position & | getLastPosition () const |
get first position (or Invalid position if segments are empty) More... | |
void | insertCustomSegment (const GNELane *lane, const Geometry &geometry, const bool valid) |
insert custom segment More... | |
void | insertLane2LaneSegment (const GNELane *currentLane, const GNELane *nextLane, const bool valid) |
insert entire lane2lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths) More... | |
void | insertLaneSegment (const GNELane *lane, const bool valid) |
insert entire lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths) More... | |
SegmentGeometry () | |
constructor More... | |
int | size () const |
number of segments More... | |
void | updateCustomSegment (const int segmentIndex, const Geometry &geometry) |
update custom segment More... | |
void | updateLane2LaneSegment (const int segmentIndex, const GNELane *lane, const GNELane *nextLane) |
update lane2Lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths) More... | |
Private Member Functions | |
SegmentGeometry & | operator= (const SegmentGeometry &other)=delete |
Invalidated assignment operator. More... | |
Private Attributes | |
std::vector< Segment > | myShapeSegments |
vector of segments that constitutes the shape More... | |
struct for pack all variables related with geometry of elemements divided in segments
Definition at line 261 of file GNEGeometry.h.
GNEGeometry::SegmentGeometry::SegmentGeometry | ( | ) |
constructor
Definition at line 672 of file GNEGeometry.cpp.
const GNEGeometry::SegmentGeometry::Segment & GNEGeometry::SegmentGeometry::back | ( | ) | const |
std::vector< GNEGeometry::SegmentGeometry::Segment >::const_iterator GNEGeometry::SegmentGeometry::begin | ( | ) | const |
begin iterator
Definition at line 755 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
void GNEGeometry::SegmentGeometry::clearSegmentGeometry | ( | ) |
clear element geometry
Definition at line 709 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::calculateLaneGeometricPath().
std::vector< GNEGeometry::SegmentGeometry::Segment >::const_iterator GNEGeometry::SegmentGeometry::end | ( | ) | const |
end iterator
Definition at line 761 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
const GNEGeometry::SegmentGeometry::Segment & GNEGeometry::SegmentGeometry::front | ( | ) | const |
front segment
Definition at line 767 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
Boundary GNEGeometry::SegmentGeometry::getBoxBoundary | ( | ) | const |
Returns a boundary enclosing all segments.
Definition at line 745 of file GNEGeometry.cpp.
References Boundary::add(), and myShapeSegments.
const Position & GNEGeometry::SegmentGeometry::getFirstPosition | ( | ) | const |
get first position (or Invalid position if segments are empty)
Definition at line 716 of file GNEGeometry.cpp.
References Position::INVALID, and myShapeSegments.
double GNEGeometry::SegmentGeometry::getFirstRotation | ( | ) | const |
get first rotation (or Invalid position if segments are empty)
Definition at line 735 of file GNEGeometry.cpp.
References myShapeSegments.
const Position & GNEGeometry::SegmentGeometry::getLastPosition | ( | ) | const |
get first position (or Invalid position if segments are empty)
Definition at line 725 of file GNEGeometry.cpp.
References Position::INVALID, and myShapeSegments.
Referenced by GNEDemandElement::drawPersonPlanPartialLane().
void GNEGeometry::SegmentGeometry::insertCustomSegment | ( | const GNELane * | lane, |
const Geometry & | geometry, | ||
const bool | valid | ||
) |
insert custom segment
Definition at line 683 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::calculateLaneGeometricPath().
void GNEGeometry::SegmentGeometry::insertLane2LaneSegment | ( | const GNELane * | currentLane, |
const GNELane * | nextLane, | ||
const bool | valid | ||
) |
insert entire lane2lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths)
Definition at line 690 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::calculateLaneGeometricPath().
void GNEGeometry::SegmentGeometry::insertLaneSegment | ( | const GNELane * | lane, |
const bool | valid | ||
) |
insert entire lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths)
Definition at line 676 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::calculateLaneGeometricPath().
|
privatedelete |
Invalidated assignment operator.
int GNEGeometry::SegmentGeometry::size | ( | ) | const |
number of segments
Definition at line 779 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
void GNEGeometry::SegmentGeometry::updateCustomSegment | ( | const int | segmentIndex, |
const Geometry & | geometry | ||
) |
update custom segment
Definition at line 697 of file GNEGeometry.cpp.
References myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
void GNEGeometry::SegmentGeometry::updateLane2LaneSegment | ( | const int | segmentIndex, |
const GNELane * | lane, | ||
const GNELane * | nextLane | ||
) |
update lane2Lane segment (used to avoid unnecessary calculation in calculatePartialShapeRotationsAndLengths)
Definition at line 703 of file GNEGeometry.cpp.
References GNELane::getLane2laneConnections(), GNEGeometry::Lane2laneConnection::getLane2laneGeometry(), and myShapeSegments.
Referenced by GNEGeometry::updateGeometricPath().
|
private |
vector of segments that constitutes the shape
Definition at line 405 of file GNEGeometry.h.
Referenced by back(), begin(), clearSegmentGeometry(), end(), front(), getBoxBoundary(), getFirstPosition(), getFirstRotation(), getLastPosition(), insertCustomSegment(), insertLane2LaneSegment(), insertLaneSegment(), size(), updateCustomSegment(), and updateLane2LaneSegment().