X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_VTKPrsBathymetry.cxx;h=1500654565d928fe36a92c8e3146093abc1f9816;hb=1c640c1b3be696caa0348d7904794e899e8e4e69;hp=31817f2c4b09d4e5245763f62d778ea4b04caba1;hpb=1209b7d8d7e613121efc789e3ccb7435f6e6e276;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_VTKPrsBathymetry.cxx b/src/HYDROGUI/HYDROGUI_VTKPrsBathymetry.cxx index 31817f2c..15006545 100644 --- a/src/HYDROGUI/HYDROGUI_VTKPrsBathymetry.cxx +++ b/src/HYDROGUI/HYDROGUI_VTKPrsBathymetry.cxx @@ -26,7 +26,7 @@ #include #include -#include +#include #include #include #include @@ -67,13 +67,15 @@ HYDROGUI_VTKPrsBathymetry::~HYDROGUI_VTKPrsBathymetry() //================================================================ void HYDROGUI_VTKPrsBathymetry::compute() { + HYDROGUI_VTKPrs::compute(); + if ( !getObject().IsNull() ) { Handle(HYDROData_Bathymetry) aBathymetry = Handle(HYDROData_Bathymetry)::DownCast( getObject() ); if ( !aBathymetry.IsNull() ) { HYDROData_Bathymetry::AltitudePoints anAltPoints = aBathymetry->GetAltitudePoints(); - int aNbPoints = anAltPoints.length(); + int aNbPoints = anAltPoints.Length(); HYDROData_Bathymetry::AltitudePoint anAltPnt; vtkPoints* aPoints = vtkPoints::New(); @@ -89,16 +91,16 @@ void HYDROGUI_VTKPrsBathymetry::compute() double aZ; int anInvalidZ = InvalidZValue(); - for (int i = 0; i < aNbPoints; i++ ) + for (int i = 1; i <= aNbPoints; i++ ) { - anAltPnt = anAltPoints.at( i ); + anAltPnt = anAltPoints.Value( i ); aZ = anAltPnt.Z(); if ( ValuesLessEquals( aZ, anInvalidZ ) ) { aZ = Z_MAX; // If Z value is invalid then use Z_MAX } - aPoints->InsertPoint( i, anAltPnt.X(), anAltPnt.Y(), aZ ); - aVertex->GetPointIds()->SetId( 0, i ); + aPoints->InsertPoint( i - 1, anAltPnt.X(), anAltPnt.Y(), aZ ); + aVertex->GetPointIds()->SetId( 0, i - 1 ); aVertexGrid->InsertNextCell( aVertex->GetCellType(), aVertex->GetPointIds()); aZValues->InsertNextValue( aZ ); } @@ -141,12 +143,11 @@ void HYDROGUI_VTKPrsBathymetry::compute() myMapper->SetInputData( aVertexGrid ); - SALOME_Actor* anActor = SALOME_Actor::New(); + SALOME_Actor* anActor = getActor(this); anActor->SetMapper( myMapper.GetPointer() ); anActor->setIO( getIO() ); AddObject( anActor ); - anActor->Delete(); aVertexGrid->Delete(); aZValues->Delete(); }