SUMO - Simulation of Urban MObility
ShapeContainer Class Reference

Storage for geometrical objects. More...

#include <ShapeContainer.h>

Inheritance diagram for ShapeContainer:
Inheritance graph
Collaboration diagram for ShapeContainer:
Collaboration graph

Public Types

typedef NamedObjectCont< PointOfInterest * > POIs
 
typedef NamedObjectCont< SUMO::Polygon * > Polygons
 

Public Member Functions

virtual bool addPOI (const std::string &id, const std::string &type, const RGBColor &color, double layer, double angle, const std::string &imgFile, const Position &pos, double width, double height, bool ignorePruning=false)
 Builds a POI using the given values and adds it to the container. More...
 
virtual bool addPolygon (const std::string &id, const std::string &type, const RGBColor &color, double layer, double angle, const std::string &imgFile, const PositionVector &shape, bool fill, bool ignorePruning=false)
 Builds a polygon using the given values and adds it to the container. More...
 
const POIs & getPOIs () const
 Returns all pois. More...
 
const Polygons & getPolygons () const
 Returns all polygons. More...
 
virtual void movePOI (const std::string &id, const Position &pos)
 Assigns a new position to the named PoI. More...
 
virtual bool removePOI (const std::string &id)
 Removes a PoI from the container. More...
 
virtual bool removePolygon (const std::string &id)
 Removes a polygon from the container. More...
 
virtual void reshapePolygon (const std::string &id, const PositionVector &shape)
 Assigns a shape to the named polygon. More...
 
 ShapeContainer ()
 Constructor. More...
 
virtual ~ShapeContainer ()
 Destructor. More...
 

Protected Member Functions

virtual bool add (SUMO::Polygon *poly, bool ignorePruning=false)
 
virtual bool add (PointOfInterest *poi, bool ignorePruning=false)
 

Protected Attributes

POIs myPOIs
 stored POIs More...
 
Polygons myPolygons
 stored Polygons More...
 

Detailed Description

Storage for geometrical objects.

Definition at line 48 of file ShapeContainer.h.

Member Typedef Documentation

Constructor & Destructor Documentation

ShapeContainer::ShapeContainer ( )

Constructor.

Definition at line 53 of file ShapeContainer.cpp.

ShapeContainer::~ShapeContainer ( )
virtual

Destructor.

Definition at line 55 of file ShapeContainer.cpp.

Member Function Documentation

bool ShapeContainer::add ( SUMO::Polygon *  poly,
bool  ignorePruning = false 
)
protectedvirtual

Reimplemented in PCPolyContainer.

Definition at line 106 of file ShapeContainer.cpp.

References NamedObjectCont< T >::add(), Named::getID(), and myPolygons.

Referenced by PCPolyContainer::add(), addPOI(), addPolygon(), and getPOIs().

bool ShapeContainer::add ( PointOfInterest *  poi,
bool  ignorePruning = false 
)
protectedvirtual

Reimplemented in PCPolyContainer.

Definition at line 116 of file ShapeContainer.cpp.

References NamedObjectCont< T >::add(), Named::getID(), and myPOIs.

bool ShapeContainer::addPOI ( const std::string &  id,
const std::string &  type,
const RGBColor &  color,
double  layer,
double  angle,
const std::string &  imgFile,
const Position &  pos,
double  width,
double  height,
bool  ignorePruning = false 
)
virtual

Builds a POI using the given values and adds it to the container.

Parameters
[in]idThe name of the POI
[in]typeThe (abstract) type of the POI
[in]colorThe color of the POI
[in]layerThe layer of the POI
[in]angleThe rotation of the POI
[in]imgFileThe raster image of the POI
[in]posThe position of the POI
[in]widthThe width of the POI image
[in]heightThe height of the POI image
Returns
whether the poi could be added

Reimplemented in GUIShapeContainer.

Definition at line 67 of file ShapeContainer.cpp.

References add().

Referenced by TraCI_POI::add(), and ShapeHandler::addPOI().

bool ShapeContainer::addPolygon ( const std::string &  id,
const std::string &  type,
const RGBColor &  color,
double  layer,
double  angle,
const std::string &  imgFile,
const PositionVector &  shape,
bool  fill,
bool  ignorePruning = false 
)
virtual

Builds a polygon using the given values and adds it to the container.

Parameters
[in]idThe name of the polygon
[in]typeThe (abstract) type of the polygon
[in]colorThe color of the polygon
[in]layerThe layer of the polygon
[in]angleThe rotation of the polygon
[in]imgFileThe raster image of the polygon
[in]shapeThe shape of the polygon
[in]fillWhether the polygon shall be filled
Returns
whether the polygon could be added

Reimplemented in GUIShapeContainer.

Definition at line 58 of file ShapeContainer.cpp.

References add().

Referenced by TraCI_Polygon::add(), NLHandler::addDistrict(), and ShapeHandler::addPoly().

const POIs& ShapeContainer::getPOIs ( ) const
inline
void ShapeContainer::movePOI ( const std::string &  id,
const Position &  pos 
)
virtual

Assigns a new position to the named PoI.

Parameters
[in]idThe id of the PoI to move
[in]posThe PoI's new position

Reimplemented in GUIShapeContainer.

Definition at line 88 of file ShapeContainer.cpp.

References NamedObjectCont< T >::get(), and myPOIs.

bool ShapeContainer::removePOI ( const std::string &  id)
virtual

Removes a PoI from the container.

Parameters
[in]idThe id of the PoI
Returns
Whether the poi could be removed

Reimplemented in GUIShapeContainer.

Definition at line 81 of file ShapeContainer.cpp.

References myPOIs, and NamedObjectCont< T >::remove().

Referenced by TraCI_POI::remove(), and GNEDeleteFrame::removeAttributeCarrier().

bool ShapeContainer::removePolygon ( const std::string &  id)
virtual

Removes a polygon from the container.

Parameters
[in]idThe id of the polygon
Returns
Whether the polygon could be removed

Reimplemented in GUIShapeContainer.

Definition at line 75 of file ShapeContainer.cpp.

References myPolygons, and NamedObjectCont< T >::remove().

Referenced by TraCI_Polygon::remove().

void ShapeContainer::reshapePolygon ( const std::string &  id,
const PositionVector &  shape 
)
virtual

Assigns a shape to the named polygon.

Parameters
[in]idThe id of the polygon to reshape
[in]shapeThe polygon's new shape

Reimplemented in GUIShapeContainer.

Definition at line 97 of file ShapeContainer.cpp.

References NamedObjectCont< T >::get(), myPolygons, and SUMO::Polygon::setShape().

Referenced by TraCI_Polygon::setShape().

Field Documentation


The documentation for this class was generated from the following files: