Skip to content
Snippets Groups Projects
Verified Commit 48e84462 authored by Mohcine Chraibi's avatar Mohcine Chraibi
Browse files

extract geometry txt

parent b642b02e
No related branches found
No related tags found
No related merge requests found
......@@ -657,7 +657,18 @@ bool MainWindow::addPedestrianGroup(int groupID,QString fileName)
auto&& geometry = _visualisationThread->getGeometry();
//try to get a geometry filename
QString geometry_file=SaxParser::extractGeometryFilename(fileName);
if(fileName.endsWith(".xml",Qt::CaseInsensitive))
{
Debug::Messages("Extract geometry file from <xml> trajectories");
QString geometry_file=SaxParser::extractGeometryFilename(fileName);
}
else
{
Debug::Messages("Extract geometry file from <txt> trajectories");
QString geometry_file=SaxParser::extractGeometryFilenameTXT(fileName);
}
Debug::Messages("MainWindow::addPedestrianGroup: geometry name: <%s>", geometry_file.toStdString().c_str());
// if xml is detected, just load and show the geometry then exit
if(geometry_file.endsWith(".xml",Qt::CaseInsensitive)) {
......
......@@ -1103,6 +1103,31 @@ QString SaxParser::extractGeometryFilename(QString &filename)
return "";
}
QString SaxParser::extractGeometryFilenameTXT(QString &filename)
{
QString extracted_geo_name="";
QFile file(filename);
QString line;
if (file.open(QIODevice::ReadOnly | QIODevice::Text)) {
QTextStream in(&file);
while (!in.atEnd()) {
//look for a line with
line = in.readLine();
std::cout << " >> " >> line >> endl;
if(line.split(":").size()==2)
{
if(line.split(":")[0] == "#geometry")
{
extracted_geo_name = line.split(":")[1]
}
}
}// while
} // if open
cout << ">> geo: " << extracted_geo_name << endl;
return extracted_geo_name;
}
void SaxParser::parseGeometryXMLV04(QString filename, GeometryFactory& geoFac)
{
cout << "parsing 04\n" ;
......@@ -1371,8 +1396,6 @@ bool SaxParser::ParseTxtFormat(const QString &fileName, SyncData* dataset, doubl
int agentID=-1 ;
int frameID=-1;
double color=155 ;
std::cout << pieces.size() << "\n";
switch(pieces.size())
{
case 5:
......
......@@ -77,7 +77,7 @@ public:
/// take a large file and find the geometry file location.
static QString extractGeometryFilename(QString& filename);
static QString SaxParser::extractGeometryFilenameTXT(QString &filename);
/// parse the txt file format
static bool ParseTxtFormat(const QString& fileName, SyncData* dataset, double * fps);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment