X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROData%2FHYDROData_ProfileUZ.cxx;h=9e05e0a83fbe389129ecb72245064f9d6803a5f8;hb=81c9f5cdf82909d0aebd2c491c50fa7516cc80b7;hp=dc82a136233f8f6593c8f468de092ba42c0a3a8f;hpb=5f5584107a486013bff5df971695bc8197716252;p=modules%2Fhydro.git diff --git a/src/HYDROData/HYDROData_ProfileUZ.cxx b/src/HYDROData/HYDROData_ProfileUZ.cxx index dc82a136..9e05e0a8 100755 --- a/src/HYDROData/HYDROData_ProfileUZ.cxx +++ b/src/HYDROData/HYDROData_ProfileUZ.cxx @@ -28,26 +28,25 @@ HYDROData_ProfileUZ::~HYDROData_ProfileUZ() { } -TopoDS_Shape HYDROData_ProfileUZ::GetShape() +TopoDS_Shape HYDROData_ProfileUZ::GetShape() const { - // TODO return TopoDS_Shape(); } -double HYDROData_ProfileUZ::GetDepthFromDistance( const double& theDistance ) const +double HYDROData_ProfileUZ::GetDepthFromDistance( const PointsList& thePoints, + const double& theDistance ) { double aResDepth = 0.0; - HYDROData_IPolyline::PointsList aPoints = GetPoints(); - int aNbPoints = aPoints.Size(); + int aNbPoints = thePoints.Size(); if ( aNbPoints < 2 ) return aResDepth; double aCompDist = 0.0; - HYDROData_IPolyline::Point aPrevPoint = aPoints.First(); + HYDROData_IPolyline::Point aPrevPoint = thePoints.First(); for ( int i = 2; i <= aNbPoints; ++i ) { - const Point& aCurPoint = aPoints.Value( i ); + const Point& aCurPoint = thePoints.Value( i ); double aPntDist = gp_Pnt2d( aPrevPoint.X(), 0 ).Distance( gp_Pnt2d( aCurPoint.X(), 0 ) ); @@ -55,7 +54,7 @@ double HYDROData_ProfileUZ::GetDepthFromDistance( const double& theDistance ) co if ( theDistance < aCompDist ) { - double aComPntDist = gp_Pnt2d( aPoints.First().X(), 0 ).Distance( gp_Pnt2d( aPrevPoint.X(), 0 ) ); + double aComPntDist = gp_Pnt2d( thePoints.First().X(), 0 ).Distance( gp_Pnt2d( aPrevPoint.X(), 0 ) ); double aFindDist = theDistance - aComPntDist; double aRatio = aFindDist / ( aPntDist - aFindDist );