Salome HOME
6.12.2013.Fix of HasIntersection method.
[modules/hydro.git] / src / HYDROData / HYDROData_Iterator.cxx
index 42585bfda1ae0f0c7af6a0a8e8ce7b0f7ee68d81..734356260d90a69f7bb04f0daae004ea1bf2dbbc 100644 (file)
@@ -10,7 +10,8 @@
 #include "HYDROData_Image.h"
 #include "HYDROData_ImmersibleZone.h"
 #include "HYDROData_Obstacle.h"
-#include "HYDROData_Polyline.h"
+#include "HYDROData_Polyline3D.h"
+#include "HYDROData_PolylineXY.h"
 #include "HYDROData_Profile.h"
 #include "HYDROData_ProfileUZ.h"
 #include "HYDROData_VisualState.h"
@@ -31,9 +32,10 @@ static TDF_Label GetLabelByKind(TDF_Label theRoot, ObjectKind theKind)
   return theRoot.FindChild(theKind);
 }
 
-HYDROData_Iterator::HYDROData_Iterator(Handle(HYDROData_Document) theDoc, ObjectKind theKind)
-  : myIter(GetLabelByKind(theDoc->LabelOfObjects(), theKind), 
-           TDataStd_Name::GetID(), theKind == KIND_UNKNOWN) // iterate all sub-objects for unknown kind
+HYDROData_Iterator::HYDROData_Iterator( const Handle(HYDROData_Document)& theDoc,
+                                        const ObjectKind                  theKind )
+: myIter( GetLabelByKind( theDoc->LabelOfObjects(), theKind ), 
+          TDataStd_Name::GetID(), theKind == KIND_UNKNOWN ) // iterate all sub-objects for unknown kind
 {
 }
 
@@ -106,7 +108,7 @@ Handle(HYDROData_Entity) HYDROData_Iterator::Object( const TDF_Label& theLabel )
       aResult = new HYDROData_Image();
       break;
     case KIND_POLYLINE:
-      aResult = new HYDROData_Polyline();
+      aResult = new HYDROData_Polyline3D();
       break;
     case KIND_BATHYMETRY:
       aResult = new HYDROData_Bathymetry();
@@ -141,6 +143,9 @@ Handle(HYDROData_Entity) HYDROData_Iterator::Object( const TDF_Label& theLabel )
     case KIND_PROFILEUZ:
       aResult = new HYDROData_ProfileUZ();
       break;
+    case KIND_POLYLINEXY:
+      aResult = new HYDROData_PolylineXY();
+      break;
     case KIND_CALCULATION:
       aResult = new HYDROData_CalculationCase();
       break;