51 #ifdef CHECK_MEMORY_LEAKS 53 #endif // CHECK_MEMORY_LEAKS 62 std::vector<double> speed =
getSpeed();
65 of <<
"<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\n";
66 of <<
"<VTKFile type=\"PolyData\" version=\"0.1\" order=\"LittleEndian\">\n";
68 of <<
" <Piece NumberOfPoints=\"" << speed.size() <<
"\" NumberOfVerts=\"1\" NumberOfLines=\"0\" NumberOfStrips=\"0\" NumberOfPolys=\"0\">\n";
69 of <<
"<PointData>\n";
70 of <<
" <DataArray type=\"Float64\" Name=\"speed\" format=\"ascii\">" <<
List2String(
getSpeed()) <<
"</DataArray>\n";
71 of <<
"</PointData>\n";
72 of <<
"<CellData/>\n";
74 of <<
" <DataArray type=\"Float64\" Name=\"Points\" NumberOfComponents=\"3\" format=\"ascii\">" <<
List2String(
getPositions()) <<
"</DataArray>\n";
77 of <<
" <DataArray type=\"Int64\" Name=\"connectivity\" format=\"ascii\">" <<
getOffset((
int) speed.size()) <<
"</DataArray>\n";
78 of <<
" <DataArray type=\"Int64\" Name=\"offsets\" format=\"ascii\">" << speed.size() <<
"</DataArray>\n";
81 of <<
" <DataArray type=\"Int64\" Name=\"connectivity\" format=\"ascii\"/>\n";
82 of <<
" <DataArray type=\"Int64\" Name=\"offsets\" format=\"ascii\"/>\n";
85 of <<
" <DataArray type=\"Int64\" Name=\"connectivity\" format=\"ascii\"/>\n";
86 of <<
" <DataArray type=\"Int64\" Name=\"offsets\" format=\"ascii\"/>\n";
89 of <<
" <DataArray type=\"Int64\" Name=\"connectivity\" format=\"ascii\"/>\n";
90 of <<
" <DataArray type=\"Int64\" Name=\"offsets\" format=\"ascii\"/>\n";
93 of <<
"</PolyData>\n";
101 std::vector<double> output;
108 for (; it != end; ++it) {
125 std::vector<double> output;
132 for (; it != end; ++it) {
151 std::string output =
"";
152 for (
int i = 0; i < (int)input.size(); i++) {
154 std::stringstream ss;
161 ss << input[i] <<
" ";
171 std::string output =
"";
172 for (
int i = 0; i < nr; i++) {
174 std::stringstream ss;
184 if (c ==
' ' || c ==
'\t' || c ==
'\r' || c ==
'\n' || c == 11) {
192 bool trimmed =
false;
195 istring.erase(istring.length() - 1);
207 return trim(istring);
static bool ctype_space(const char c)
Checks if there is a whitespace.
Representation of a vehicle in the micro simulation.
constVehIt loadedVehBegin() const
Returns the begin of the internal vehicle map.
MSLane * getLane() const
Returns the lane the vehicle is on.
Position getPosition(const SUMOReal offset=0) const
Return current position (x/y, cartesian)
Position positionAtOffset(SUMOReal pos, SUMOReal lateralOffset=0) const
Returns the position at the given length.
static MSNet * getInstance()
Returns the pointer to the unique instance of MSNet (singleton).
const PositionVector & getShape() const
Returns this lane's shape.
static std::vector< double > getPositions()
Get a Vector of the Positions (x,y,z) of each vehicle in the actual timestep.
bool isOnRoad() const
Returns the information whether the vehicle is on a road (is simulated)
SUMOReal z() const
Returns the z-position.
A point in 2D or 3D with translation and scaling methods.
MSVehicleControl & getVehicleControl()
Returns the vehicle control.
static void write(OutputDevice &of, SUMOTime timestep)
Produce a VTK output to use with Tools like ParaView.
SUMOReal getPositionOnLane() const
Get the vehicle's position along the lane.
SUMOReal x() const
Returns the x-position.
static std::vector< double > getSpeed()
Get a Vector with the speed values of each vehicle in the actual timestep.
static std::string List2String(std::vector< double > input)
Get a comma separated String from a Vector.
static std::string trim(std::string istring)
Deletes the whitespaces at the end of a String.
std::map< std::string, SUMOVehicle * >::const_iterator constVehIt
Definition of the internal vehicles map iterator.
Static storage of an output device and its base (abstract) implementation.
static std::string getOffset(int nr)
Get a String with the indexes of all vehicles (needed in the VTk File)
The class responsible for building and deletion of vehicles.
SUMOReal y() const
Returns the y-position.
SUMOReal getSpeed() const
Returns the vehicle's current speed.
constVehIt loadedVehEnd() const
Returns the end of the internal vehicle map.