Eclipse SUMO - Simulation of Urban MObility
|
move operation More...
#include <GNEMoveElement.h>
Public Types | |
enum class | OperationType { POSITION , ENTIRE_SHAPE , GEOMETRY_POINTS , WIDTH , HEIGHT , LENGTH , ONE_LANE , ONE_LANE_MOVEFIRST , ONE_LANE_MOVESECOND , ONE_LANE_MOVEBOTH , TWO_LANES_MOVEFIRST , TWO_LANES_MOVESECOND , TWO_LANES_MOVEBOTH_FIRST , TWO_LANES_MOVEBOTH_SECOND } |
Public Member Functions | |
GNEMoveOperation (GNEMoveElement *moveElement, const GNELane *firstLane, const double firstStartPos, const GNELane *secondLane, const double secondStartPos, const bool allowChangeLane, const OperationType operationType) | |
constructor for elements placed over two lanes with two positions (E2 Multilane, vehicles..) | |
GNEMoveOperation (GNEMoveElement *moveElement, const GNELane *lane, const double firstPosition, const bool allowChangeLane) | |
constructor for elements placed over lanes with one position (detectors, vehicles...) | |
GNEMoveOperation (GNEMoveElement *moveElement, const GNELane *lane, const double firstPosition, const double secondPosition, const bool allowChangeLane, const OperationType operationType) | |
constructor for elements placed over same lanes with two positions (StoppingPlaces) | |
GNEMoveOperation (GNEMoveElement *moveElement, const Position originalPosition) | |
constructor for values with a single position (junctions, E3, ParkingSpaces...) | |
GNEMoveOperation (GNEMoveElement *moveElement, const PositionVector originalShape) | |
constructor for entire geometries (Polygon with blocked shapes) | |
GNEMoveOperation (GNEMoveElement *moveElement, const PositionVector originalShape, const bool firstGeometryPoint, const OperationType operationType) | |
constructor for entire geometries (Polygon with blocked shapes) | |
GNEMoveOperation (GNEMoveElement *moveElement, const PositionVector originalShape, const std::vector< int > originalgeometryPoints, const PositionVector shapeToMove, const std::vector< int > geometryPointsToMove) | |
constructor for elements with editable shapes (edges, polygons...) | |
~GNEMoveOperation () | |
destructor | |
Data Fields | |
const bool | allowChangeLane |
allow change lane | |
const bool | firstGeometryPoint |
first position (used for edit with/height | |
const GNELane * | firstLane = nullptr |
original first lane | |
const double | firstPosition = INVALID_DOUBLE |
original first Position | |
const std::vector< int > | geometryPointsToMove |
shape points to move (of shapeToMove) | |
GNEMoveElement * | moveElement |
move element | |
const OperationType | operationType |
operation type | |
const std::vector< int > | originalGeometryPoints |
original shape points to move (of original shape) | |
const PositionVector | originalShape |
original shape | |
const GNELane * | secondLane = nullptr |
original second lane | |
const double | secondPosition = INVALID_DOUBLE |
original second Position | |
const PositionVector | shapeToMove |
shape to move | |
Private Member Functions | |
GNEMoveOperation (const GNEMoveOperation &)=delete | |
Invalidated copy constructor. | |
GNEMoveOperation & | operator= (const GNEMoveOperation &)=delete |
Invalidated assignment operator. | |
move operation
Definition at line 40 of file GNEMoveElement.h.
|
strong |
Definition at line 43 of file GNEMoveElement.h.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const Position | originalPosition | ||
) |
constructor for values with a single position (junctions, E3, ParkingSpaces...)
Definition at line 32 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const PositionVector | originalShape | ||
) |
constructor for entire geometries (Polygon with blocked shapes)
Definition at line 43 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const PositionVector | originalShape, | ||
const bool | firstGeometryPoint, | ||
const OperationType | operationType | ||
) |
constructor for entire geometries (Polygon with blocked shapes)
Definition at line 53 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const PositionVector | originalShape, | ||
const std::vector< int > | originalgeometryPoints, | ||
const PositionVector | shapeToMove, | ||
const std::vector< int > | geometryPointsToMove | ||
) |
constructor for elements with editable shapes (edges, polygons...)
Definition at line 65 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const GNELane * | lane, | ||
const double | firstPosition, | ||
const bool | allowChangeLane | ||
) |
constructor for elements placed over lanes with one position (detectors, vehicles...)
Definition at line 81 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const GNELane * | lane, | ||
const double | firstPosition, | ||
const double | secondPosition, | ||
const bool | allowChangeLane, | ||
const OperationType | operationType | ||
) |
constructor for elements placed over same lanes with two positions (StoppingPlaces)
Definition at line 94 of file GNEMoveElement.cpp.
GNEMoveOperation::GNEMoveOperation | ( | GNEMoveElement * | moveElement, |
const GNELane * | firstLane, | ||
const double | firstStartPos, | ||
const GNELane * | secondLane, | ||
const double | secondStartPos, | ||
const bool | allowChangeLane, | ||
const OperationType | operationType | ||
) |
constructor for elements placed over two lanes with two positions (E2 Multilane, vehicles..)
Definition at line 110 of file GNEMoveElement.cpp.
GNEMoveOperation::~GNEMoveOperation | ( | ) |
destructor
Definition at line 128 of file GNEMoveElement.cpp.
|
privatedelete |
Invalidated copy constructor.
|
privatedelete |
Invalidated assignment operator.
const bool GNEMoveOperation::allowChangeLane |
allow change lane
Definition at line 137 of file GNEMoveElement.h.
Referenced by GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const bool GNEMoveOperation::firstGeometryPoint |
first position (used for edit with/height
Definition at line 140 of file GNEMoveElement.h.
Referenced by GNEMoveElement::calculateExtrapolatedVector().
const GNELane* GNEMoveOperation::firstLane = nullptr |
original first lane
Definition at line 117 of file GNEMoveElement.h.
Referenced by GNEMoveElement::adjustBothPositions(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const double GNEMoveOperation::firstPosition = INVALID_DOUBLE |
original first Position
Definition at line 120 of file GNEMoveElement.h.
Referenced by GNEMoveElement::adjustBothPositions(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const std::vector<int> GNEMoveOperation::geometryPointsToMove |
shape points to move (of shapeToMove)
Definition at line 134 of file GNEMoveElement.h.
Referenced by GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
GNEMoveElement* GNEMoveOperation::moveElement |
move element
Definition at line 108 of file GNEMoveElement.h.
Referenced by GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const OperationType GNEMoveOperation::operationType |
operation type
Definition at line 143 of file GNEMoveElement.h.
Referenced by GNEMoveElement::adjustBothPositions(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const std::vector<int> GNEMoveOperation::originalGeometryPoints |
original shape points to move (of original shape)
Definition at line 114 of file GNEMoveElement.h.
Referenced by GNEMoveElement::commitMove().
const PositionVector GNEMoveOperation::originalShape |
original shape
Definition at line 111 of file GNEMoveElement.h.
Referenced by GNEMoveElement::calculateExtrapolatedVector(), and GNEMoveElement::commitMove().
const GNELane* GNEMoveOperation::secondLane = nullptr |
original second lane
Definition at line 123 of file GNEMoveElement.h.
Referenced by GNEMoveElement::adjustBothPositions(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const double GNEMoveOperation::secondPosition = INVALID_DOUBLE |
original second Position
Definition at line 126 of file GNEMoveElement.h.
Referenced by GNEMoveElement::adjustBothPositions(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().
const PositionVector GNEMoveOperation::shapeToMove |
shape to move
Definition at line 131 of file GNEMoveElement.h.
Referenced by GNEMoveElement::calculateExtrapolatedVector(), GNEMoveElement::commitMove(), and GNEMoveElement::moveElement().