Salome HOME
another z layer for hilight presentation
[modules/hydro.git] / src / HYDROData / HYDROData_PolylineXY.cxx
index d40212e22a6018b713445af69ae6d516bb7512c7..be2495cd0f11872616ac56feb545e7cb1c64145b 100755 (executable)
@@ -389,14 +389,15 @@ TopoDS_Wire HYDROData_PolylineXY::BuildWire( const SectionType&
   TopoDS_Wire aWire;
   if( theType == SECTION_POLYLINE )
   {
+    int aNbPoints = thePoints.Length();
     BRepBuilderAPI_MakePolygon aMakeWire;
-    for ( int i = 1, n = thePoints.Length(); i <= n ; ++i )
+    for ( int i = 1, n = aNbPoints; i <= n ; ++i )
     {
       gp_XYZ aPoint = thePoints.Value( i );
       gp_Pnt aPnt( aPoint.X(), aPoint.Y(), aPoint.Z() );
       aMakeWire.Add( aPnt );
     }
-    if( theIsClosed )
+    if( theIsClosed && ( aNbPoints > 2 ) )
       aMakeWire.Close();
 
     if ( aMakeWire.IsDone() )
@@ -537,6 +538,11 @@ void HYDROData_PolylineXY::Update()
   setPolylineShape( aResult );
 }
 
+bool HYDROData_PolylineXY::IsHas2dPrs() const
+{
+  return true;
+}
+
 bool HYDROData_PolylineXY::IsEditable() const
 {
   return !myLab.IsAttribute( GUID_IS_UNEDITABLE );