{
QImage anActualImage = viewWindow()->dumpView();
- QString anExpectedRefFilePath = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test/HYDRO";
+ QString anExpectedRefFilePath = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test";
anExpectedRefFilePath += "/" + myKey + ".png";
QImage anExpectedRefImage;
anExpectedRefImage.load( anExpectedRefFilePath );
QString aDiffFilePath = QDir::tempPath() + "/" + myKey + "_diff.png";
aDiff.save( aDiffFilePath );
+ anExpectedRefImage.save( QDir::tempPath() + "/" + myKey + "_1.png");
+
return false;
}
#define _DEVDEBUG_
#include "HYDRO_trace.hxx"
-const QString REF_DATA_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test/HYDRO";
+const QString REF_DATA_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/bin/salome/test";
const QString DEF_STR_PATH = qgetenv( "HYDRO_ROOT_DIR" ) + "/share/salome/resources/hydro/def_strickler_table.txt";
void test_HYDROData_LandCoverMap::test_add_2_objects()
aDoc->Close();
}
+
+void test_HYDROData_LandCoverMap::test_shp_clc_classification()
+{
+ Handle(HYDROData_Document) aDoc = HYDROData_Document::Document(1);
+ QString aFileName = REF_DATA_PATH + "/CLC_decoupe.shp";
+ HYDROData_ShapeFile anImporter;
+ QStringList PolygonList;
+ TopTools_SequenceOfShape PolygonFaces;
+ int Type = -1;
+ int aStat = anImporter.ImportPolygons(aDoc, aFileName, PolygonList, PolygonFaces, Type);
+ CPPUNIT_ASSERT(aStat == 1);
+ CPPUNIT_ASSERT_EQUAL(5, Type);
+ CPPUNIT_ASSERT_EQUAL(625, PolygonFaces.Length());
+
+ Handle(HYDROData_LandCoverMap) LCM = Handle(HYDROData_LandCoverMap)::DownCast( aDoc->CreateObject( KIND_LAND_COVER_MAP ) );
+ HYDROData_MapOfFaceToStricklerType aMapFace2ST;
+
+ for ( int i = 100; i <= 300; i++ )
+ {
+ TopoDS_Shape aShape = PolygonFaces(i);
+ if ( aShape.IsNull() )
+ continue;
+ aMapFace2ST.Add( TopoDS::Face( aShape ), "ST_" + QString::number(i) );
+ }
+
+ LCM->StoreLandCovers(aMapFace2ST);
+ //TopoDS_Shape aSh = LCM->GetShape();
+
+ std::vector<gp_Pnt2d> pnts;
+ int N = 100000;
+ pnts.reserve(N);
+ double x0 = 448646.91897505691;
+ double x1 = 487420.3990381231;
+ double y0 = 6373566.5122489957;
+ double y1 = 6392203.4117361344;
+ for (size_t i=0; i < N; i++)
+ {
+ double px = x0 + (x1-x0)/(double)N;
+ double py = y0 + (y1-y0)/(double)N;
+ pnts.push_back(gp_Pnt2d(px,py));
+ }
+ std::vector<std::set <QString> > TRes;
+ LCM->ClassifyPoints(pnts, TRes);
+}
CPPUNIT_TEST( test_shp_import_clc_dec );
CPPUNIT_TEST( test_shp_import_nld_areas );
CPPUNIT_TEST( test_shp_loop_back );
+ CPPUNIT_TEST( test_shp_clc_classification );
#endif
CPPUNIT_TEST_SUITE_END();
void test_shp_loop_back();
void test_export_telemac();
void test_copy();
+ void test_shp_clc_classification();
};
CPPUNIT_TEST_SUITE_REGISTRATION( test_HYDROData_LandCoverMap );
CppUnit::TestFactoryRegistry::getRegistry();
// Add the top suite to the test runner
TestLib_Runner runner;
- //QString aPath = qgetenv( "HYDRO_SRC_DIR" ) + "/src/tests.cfg";
- //runner.Load( aPath.toStdString() );
+ QString aPath = qgetenv( "HYDRO_SRC_DIR" ) + "/src/tests.cfg";
+ runner.Load( aPath.toStdString() );
runner.addTest( registry.makeTest() );
try
{