36 GNENetworkElement(edgeTypeParent->getNet(),
"",
GLO_LANE,
SUMO_TAG_LANETYPE, {}, {}, {}, {}, {}, {}, {}, {}),
37 myEdgeTypeParent(edgeTypeParent) {
42 GNENetworkElement(edgeTypeParent->getNet(),
"",
GLO_LANE,
SUMO_TAG_LANETYPE, {}, {}, {}, {}, {}, {}, {}, {}),
43 myEdgeTypeParent(edgeTypeParent) {
45 speed = laneType.speed;
47 width = laneType.width;
48 attrs = laneType.attrs;
124 if (
attrs.count(key) == 0) {
142 if (
attrs.count(key) == 0) {
179 return canParse<double>(value) && (parse<double>(value) > 0);
199 const std::map<std::string, std::string>&
218 speed = parse<double>(value);
242 width = parse<double>(value);
SVCPermissions invertPermissions(SVCPermissions permissions)
negate the given permissions and ensure that only relevant bits are set
const std::string & getVehicleClassNames(SVCPermissions permissions, bool expand)
Returns the ids of the given classes, divided using a ' '.
SVCPermissions parseVehicleClasses(const std::string &allowedS)
Parses the given definition of allowed vehicle classes into the given containers Deprecated classes g...
bool canParseVehicleClasses(const std::string &classes)
Checks whether the given string contains only known vehicle classes.
@ SUMO_TAG_LANETYPE
lane type
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
@ GNE_ATTR_PARAMETERS
parameters "key1=value1|key2=value2|...|keyN=valueN"
std::string toString(const T &t, std::streamsize accuracy=gPrecision)
friend class GNEChange_Attribute
declare friend class
const std::string & getTagStr() const
get tag assigned to this object in string format
int getLaneTypeIndex(const GNELaneType *laneType) const
get laneType index
void removeGeometryPoint(const Position clickedPosition, GNEUndoList *undoList)
remove geometry point in the clicked position
GNEEdgeType * myEdgeTypeParent
pointer to EdgeTypeParent
void drawGL(const GUIVisualizationSettings &s) const
Draws the object.
Position getPositionInView() const
Returns position of hierarchical element in view.
void updateCenteringBoundary(const bool updateGrid)
update centering boundary (implies change in RTREE)
void updateGeometry()
update pre-computed geometry information
bool isValid(SumoXMLAttr key, const std::string &value)
void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)
std::string getAttribute(SumoXMLAttr key) const
GNELaneType(GNEEdgeType *edgeTypeParent)
Constructor.
const std::map< std::string, std::string > & getACParametersMap() const
get parameters map
void copyLaneType(GNELaneType *originalLaneType, GNEUndoList *undoList)
copy values of given laneType in current laneType
bool isAttributeEnabled(SumoXMLAttr key) const
GNEMoveOperation * getMoveOperation(const double shapeOffset)
get move operation for the given shapeOffset
GNEEdgeType * getEdgeTypeParent() const
get edge type parent
void setMoveShape(const GNEMoveResult &moveResult)
set move shape
GUIGLObjectPopupMenu * getPopUpMenu(GUIMainWindow &app, GUISUMOAbstractView &parent)
Returns an own popup-menu.
~GNELaneType()
Destructor.
void commitMoveShape(const GNEMoveResult &moveResult, GNEUndoList *undoList)
commit move shape
const std::string & getID() const
get ID
void p_add(GNEChange_Attribute *cmd)
special method, avoid empty changes, always execute
Stores the information about how to visualize structures.
static const double UNSPECIFIED_WIDTH
unspecified lane width
static bool areParametersValid(const std::string &value, bool report=false, ParameterisedAttrType attrType=ParameterisedAttrType::STRING, const std::string kvsep="=", const std::string sep="|")
check if given string can be parsed to a parameters map "key1=value1|key2=value2|....
void setParametersStr(const std::string ¶msString, const std::string kvsep="=", const std::string sep="|")
set the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN"
std::string getParametersStr(const std::string kvsep="=", const std::string sep="|") const
Returns the inner key/value map in string format "key1=value1|key2=value2|...|keyN=valueN".
const std::map< std::string, std::string > & getParametersMap() const
Returns the inner key/value map.
A point in 2D or 3D with translation and scaling methods.
double speed
The maximal velocity on a lane in m/s.
SVCPermissions permissions
List of vehicle edgeTypes that are allowed on this lane.
std::set< SumoXMLAttr > attrs
The attributes which have been set.
double width
lane width [m]