![]() |
SUMO - Simulation of Urban MObility
|
Set z-values for all network positions based on data from a height map. More...
#include <NBHeightMapper.h>
Data Structures | |
class | QueryResult |
class for cirumventing the const-restriction of RTree::Search-context More... | |
class | Triangle |
Public Types | |
typedef std::vector< const Triangle * > | Triangles |
Public Member Functions | |
const Boundary & | getBoundary () |
returns the convex boundary of all known triangles More... | |
double | getZ (const Position &geo) const |
returns height for the given geo coordinate (WGS84) More... | |
bool | ready () const |
returns whether the NBHeightMapper has data More... | |
Static Public Member Functions | |
static const NBHeightMapper & | get () |
return the singleton instance (maybe 0) More... | |
static void | loadIfSet (OptionsCont &oc) |
loads heigh map data if any loading options are set More... | |
Private Member Functions | |
void | addTriangle (PositionVector corners) |
adds one triangles worth of height data More... | |
void | clearData () |
clears loaded data More... | |
int | loadShapeFile (const std::string &file) |
load height data from Arcgis-shape file and returns the number of parsed features More... | |
int | loadTiff (const std::string &file) |
load height data from GeoTIFF file and returns the number of non void pixels More... | |
NBHeightMapper () | |
private constructor and destructor (Singleton) More... | |
NBHeightMapper (const NBHeightMapper &) | |
Invalidated copy constructor. More... | |
NBHeightMapper & | operator= (const NBHeightMapper &) |
Invalidated assignment operator. More... | |
~NBHeightMapper () | |
Private Attributes | |
Boundary | myBoundary |
convex boundary of all known triangles; More... | |
int16_t * | myRaster |
raster height information in m More... | |
TRIANGLE_RTREE_QUAL | myRTree |
The RTree for spatial queries. More... | |
Position | mySizeOfPixel |
dimensions of one pixel in raster data More... | |
Triangles | myTriangles |
Static Private Attributes | |
static NBHeightMapper | Singleton |
the singleton instance More... | |
Friends | |
class | NBHeightMapperTest |
Set z-values for all network positions based on data from a height map.
Importing data from '.shp'-files works only if SUMO was compiled with GDAL-support. If not, an error message is generated.
Definition at line 64 of file NBHeightMapper.h.
typedef std::vector<const Triangle*> NBHeightMapper::Triangles |
Definition at line 119 of file NBHeightMapper.h.
|
private |
private constructor and destructor (Singleton)
Definition at line 65 of file NBHeightMapper.cpp.
|
private |
Definition at line 70 of file NBHeightMapper.cpp.
References clearData().
|
private |
Invalidated copy constructor.
|
private |
adds one triangles worth of height data
Definition at line 142 of file NBHeightMapper.cpp.
References PositionVector::getBoxBoundary(), myRTree, myTriangles, Boundary::xmax(), Boundary::xmin(), Boundary::ymax(), and Boundary::ymin().
Referenced by loadShapeFile().
|
private |
clears loaded data
Definition at line 332 of file NBHeightMapper.cpp.
References myBoundary, myRaster, myTriangles, and Boundary::reset().
Referenced by loadTiff(), and ~NBHeightMapper().
|
static |
return the singleton instance (maybe 0)
Definition at line 76 of file NBHeightMapper.cpp.
References Singleton.
Referenced by NBNetBuilder::transformCoordinate().
|
inline |
returns the convex boundary of all known triangles
Definition at line 83 of file NBHeightMapper.h.
References getZ(), myBoundary, and Singleton.
Referenced by loadIfSet().
double NBHeightMapper::getZ | ( | const Position & | geo | ) | const |
returns height for the given geo coordinate (WGS84)
Definition at line 88 of file NBHeightMapper.cpp.
References Boundary::around(), NBHeightMapper::Triangle::contains(), NBHeightMapper::Triangle::getZ(), myBoundary, myRaster, myRTree, mySizeOfPixel, ready(), toString(), NBHeightMapper::QueryResult::triangles, UNUSED_PARAMETER, WRITE_WARNING, Position::x(), Boundary::xmax(), Boundary::xmin(), Position::y(), and Boundary::ymax().
Referenced by getBoundary(), and NBNetBuilder::transformCoordinate().
|
static |
loads heigh map data if any loading options are set
[in] | oc | The options container to get further options from |
ProcessError | if something fails |
Definition at line 153 of file NBHeightMapper.cpp.
References MsgHandler::endProcessMsg(), getBoundary(), MsgHandler::getMessageInstance(), OptionsCont::getStringVector(), OptionsCont::isSet(), loadShapeFile(), loadTiff(), PROGRESS_BEGIN_MESSAGE, Singleton, and toString().
Referenced by NILoader::load().
|
private |
load height data from Arcgis-shape file and returns the number of parsed features
ProcessError |
Definition at line 180 of file NBHeightMapper.cpp.
References Boundary::add(), addTriangle(), myBoundary, WRITE_ERROR, and WRITE_WARNING.
Referenced by loadIfSet().
|
private |
load height data from GeoTIFF file and returns the number of non void pixels
ProcessError |
Definition at line 279 of file NBHeightMapper.cpp.
References Boundary::add(), clearData(), myBoundary, myRaster, mySizeOfPixel, Position::set(), WRITE_ERROR, Position::x(), and Position::y().
Referenced by loadIfSet().
|
private |
Invalidated assignment operator.
bool NBHeightMapper::ready | ( | ) | const |
returns whether the NBHeightMapper has data
Definition at line 82 of file NBHeightMapper.cpp.
References myRaster, and myTriangles.
Referenced by getZ(), and NBNetBuilder::transformCoordinate().
|
friend |
Definition at line 66 of file NBHeightMapper.h.
|
private |
convex boundary of all known triangles;
Definition at line 149 of file NBHeightMapper.h.
Referenced by clearData(), getBoundary(), getZ(), loadShapeFile(), and loadTiff().
|
private |
raster height information in m
Definition at line 143 of file NBHeightMapper.h.
Referenced by clearData(), getZ(), loadTiff(), and ready().
|
private |
The RTree for spatial queries.
Definition at line 140 of file NBHeightMapper.h.
Referenced by addTriangle(), and getZ().
|
private |
dimensions of one pixel in raster data
Definition at line 146 of file NBHeightMapper.h.
Referenced by getZ(), and loadTiff().
|
private |
Definition at line 137 of file NBHeightMapper.h.
Referenced by addTriangle(), clearData(), and ready().
|
staticprivate |
the singleton instance
Definition at line 135 of file NBHeightMapper.h.
Referenced by get(), getBoundary(), and loadIfSet().