20 #ifndef GNEAdditionalSet_h 21 #define GNEAdditionalSet_h 66 std::vector<GNEAdditional*> additionalChilds = std::vector<GNEAdditional*>(),
67 std::vector<GNEEdge*> edgeChilds = std::vector<GNEEdge*>(),
68 std::vector<GNELane*> laneChilds = std::vector<GNELane*>());
bool removeLaneChild(GNELane *lane)
remove lane element to this set
bool addEdgeChild(GNEEdge *edge)
add edge element to this set
SumoXMLTag
Numbers representing SUMO-XML - element names.
std::vector< std::string > getEdgeChildIds() const
get ids of edge childs
std::vector< GNEAdditional * > childAdditionals
typedef for containers
bool addLaneChild(GNELane *lane)
add lane element to this set
~GNEAdditionalSet()
Destructor.
virtual std::string getAttribute(SumoXMLAttr key) const =0
int getNumberOfLaneChilds() const
get number of lane childs of this additionalSet
int getNumberOfEdgeChilds() const
get number of edge childs of this additionalSet
GNEAdditionalSet(const std::string &id, GNEViewNet *viewNet, Position pos, SumoXMLTag tag, bool blocked=false, std::vector< GNEAdditional *> additionalChilds=std::vector< GNEAdditional *>(), std::vector< GNEEdge *> edgeChilds=std::vector< GNEEdge *>(), std::vector< GNELane *> laneChilds=std::vector< GNELane *>())
Constructor.
Stores the information about how to visualize structures.
SUMOReal rotationOverLane
childEdges myChildEdges
map of child edges and their positions and rotation
childLanes myChildLanes
list of child lanes and their positions and rotation
A NBNetBuilder extended by visualisation and editing capabilities.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
std::vector< SUMOReal > rotationsOverLanes
SumoXMLAttr
Numbers representing SUMO-XML - attributes.
An Element wich group additionalSet elements.
GNEAdditionalSet & operator=(const GNEAdditionalSet &)
Invalidated assignment operator.
bool removeEdgeChild(GNEEdge *edge)
remove edge element to this set
std::map< GUIGlObject *, Position > myConnectionMiddlePosition
map to keep the middle position of connection
void updateConnections()
update connections.
Position positionOverLane
A point in 2D or 3D with translation and scaling methods.
bool removeAdditionalGeometryChild(GNEAdditional *additional)
remove additional element to this set
bool addAdditionalChild(GNEAdditional *additional)
add additional element to this set
void drawConnections() const
draw connections.
virtual void drawGL(const GUIVisualizationSettings &s) const =0
Draws the object.
A road/street connecting two junctions (netedit-version)
std::vector< GNEAdditional * > myChildAdditionals
list of additional childs (Position and rotations is derived from additional)
void setLaneChilds(std::vector< GNELane *> lanes)
set lane childs
void setEdgeChilds(std::vector< GNEEdge *> edges)
set edge childs
std::vector< std::string > getAdditionalChildIds() const
get ids of additional childs
virtual void writeAdditional(OutputDevice &device, const std::string ¤tDirectory)=0
writte additionalSet element into a xml file
An Element which don't belongs to GNENet but has influency in the simulation.
virtual void updateGeometry()=0
update pre-computed geometry information
std::vector< std::string > getLaneChildIds() const
get ids of lane childs
std::vector< laneChild > childLanes
void writeAdditionalChildrens(OutputDevice &device, const std::string ¤tDirectory)
writte children of this additionalSet
Static storage of an output device and its base (abstract) implementation.
virtual void setAttribute(SumoXMLAttr key, const std::string &value, GNEUndoList *undoList)=0
method for setting the attribute and letting the object perform additional changes ...
virtual bool isValid(SumoXMLAttr key, const std::string &value)=0
method for checking if the key and their conrrespond attribute are valids
int getNumberOfAdditionalChilds() const
get number of additional childs of this additionalSet
std::vector< edgeChild > childEdges
std::vector< Position > positionsOverLanes
virtual const std::string & getParentName() const =0
Returns the name of the parent object (if any)