50 Named(id), myStartNode(startNode), myEndNode(endNode), myReverseID(reverseID ==
"" ?
"-" + id : reverseID) {
71 if (priority > 1 && oc.
getBool(
"rand.random-priority")) {
75 if (lanenumber > 1 && oc.
getBool(
"rand.random-lanenumber")) {
84 const double maxSegmentLength = oc.
getFloat(
"geometry.max-segment-length");
88 if (maxSegmentLength > 0) {
bool isRailway(SVCPermissions permissions)
Returns whether an edge with the given permissions is a railway edge.
long long int SVCPermissions
bitset where each bit declares whether a certain SVC may use this edge/lane
LaneSpreadFunction
Numbers representing special SUMO-XML-attribute values Information how the edge's lateral offset shal...
The representation of a single edge during network building.
void setPermissions(SVCPermissions permissions, int lane=-1)
set allowed/disallowed classes for the given lane or for all lanes if -1 is given
static const double UNSPECIFIED_FRICTION
unspecified lane friction
static const double UNSPECIFIED_OFFSET
unspecified lane offset
Instance responsible for building networks.
static int addGeometrySegments(PositionVector &from, const PositionVector &cartesian, const double maxLength)
insertion geometry points to ensure maximum segment length between points
NBNodeCont & getNodeCont()
Returns a reference to the node container.
NBTypeCont & getTypeCont()
Returns a reference to the type container.
NBNode * retrieve(const std::string &id) const
Returns the node with the given name.
Represents a single node (junction) during network building.
const Position & getPosition() const
int size() const
Returns the number of known edgeTypes.
double getEdgeTypeSpeed(const std::string &edgeType) const
Returns the maximal velocity for the given edgeType [m/s].
int getEdgeTypePriority(const std::string &edgeType) const
Returns the priority for the given edgeType.
TypesCont::const_iterator begin() const
return begin iterator
int getEdgeTypeNumLanes(const std::string &edgeType) const
Returns the number of lanes for the given edgeType.
double getEdgeTypeWidth(const std::string &edgeType) const
Returns the lane width for the given edgeType [m].
SVCPermissions getEdgeTypePermissions(const std::string &edgeType) const
Returns allowed vehicle classes for the given edgeType.
LaneSpreadFunction getEdgeTypeSpreadType(const std::string &edgeType) const
Returns spreadType for the given edgeType.
bool getEdgeTypeIsOneWay(const std::string &edgeType) const
Returns whether edges are one-way per default for the given edgeType.
const std::string myReverseID
The id when building the reverse edge.
NBEdge * buildNBEdge(NBNetBuilder &nb, std::string type, const bool reversed=false) const
Builds and returns this link's netbuild-representation.
NGNode * myStartNode
The node the edge starts at.
NGNode * myEndNode
The node the edge ends at.
NGEdge(const std::string &id, NGNode *startNode, NGNode *endNode, const std::string &reverseID="")
Constructor.
A netgen-representation of a node.
void addLink(NGEdge *link)
Adds the given link to the internal list.
void removeLink(NGEdge *link)
Removes the given link.
Base class for objects which have an id.
std::string myID
The name of the object.
const std::string & getID() const
Returns the id.
A storage for options typed value containers)
double getFloat(const std::string &name) const
Returns the double-value of the named option (only for Option_Float)
bool getBool(const std::string &name) const
Returns the boolean-value of the named option (only for Option_Bool)
static OptionsCont & getOptions()
Retrieves the options.
static double rand(SumoRNG *rng=nullptr)
Returns a random real number in [0, 1)