From c6dbc9821b84a9733eab441b53bf12a9f9cc5c8b Mon Sep 17 00:00:00 2001 From: Anthony Geay Date: Thu, 28 Apr 2016 18:00:52 +0200 Subject: [PATCH] EDF12599 : Addition of ShrinkFactor property for ELNO Mesh filter in MEDReader. --- .../MEDReader/IO/vtkELNOMeshFilter.cxx | 4 +- src/Plugins/MEDReader/IO/vtkELNOMeshFilter.h | 5 +- .../Resources/MEDReaderServer.xml | 11 + .../Test/Baselines/testMEDReader20.png | Bin 0 -> 19364 bytes src/Plugins/MEDReader/Test/CMakeLists.txt | 2 +- src/Plugins/MEDReader/Test/testMEDReader20.py | 191 ++++++++++++++++++ 6 files changed, 209 insertions(+), 4 deletions(-) create mode 100644 src/Plugins/MEDReader/Test/Baselines/testMEDReader20.png create mode 100644 src/Plugins/MEDReader/Test/testMEDReader20.py diff --git a/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.cxx b/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.cxx index a01b5d8b..62aa3e6e 100644 --- a/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.cxx +++ b/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.cxx @@ -41,7 +41,7 @@ vtkStandardNewMacro(vtkELNOMeshFilter); -vtkELNOMeshFilter::vtkELNOMeshFilter() +vtkELNOMeshFilter::vtkELNOMeshFilter():ShrinkFactor(0.9999) { } @@ -71,7 +71,7 @@ int vtkELNOMeshFilter::RequestData(vtkInformation *request, usgInClone->ShallowCopy(usgIn); vtkSmartPointer shrink(vtkSmartPointer::New()); shrink->SetInputData(usgInClone); - shrink->SetShrinkFactor(0.9999); + shrink->SetShrinkFactor(this->ShrinkFactor); shrink->Update(); vtkUnstructuredGrid *shrinked(shrink->GetOutput()); usgInClone->Delete(); diff --git a/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.h b/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.h index b3cc6038..f24958d6 100644 --- a/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.h +++ b/src/Plugins/MEDReader/IO/vtkELNOMeshFilter.h @@ -29,15 +29,18 @@ public: vtkTypeMacro(vtkELNOMeshFilter,vtkUnstructuredGridAlgorithm); void PrintSelf(ostream& os, vtkIndent indent); + vtkGetMacro(ShrinkFactor, double); + vtkSetMacro(ShrinkFactor, double); protected: vtkELNOMeshFilter(); ~vtkELNOMeshFilter(); int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); - private: vtkELNOMeshFilter(const vtkELNOMeshFilter&); void operator =(const vtkELNOMeshFilter&); +private: + double ShrinkFactor; }; #endif diff --git a/src/Plugins/MEDReader/ParaViewPlugin/Resources/MEDReaderServer.xml b/src/Plugins/MEDReader/ParaViewPlugin/Resources/MEDReaderServer.xml index f4a772d6..6f751967 100644 --- a/src/Plugins/MEDReader/ParaViewPlugin/Resources/MEDReaderServer.xml +++ b/src/Plugins/MEDReader/ParaViewPlugin/Resources/MEDReaderServer.xml @@ -235,6 +235,7 @@ short_help="Create a Mesh with ELNO values mapped at each vertex."> "Create a Mesh with ELNO values mapped at each vertex." + @@ -245,6 +246,16 @@ + + + + The value of this property determines how far the points + will move in the mesh before to be colored using ELNO fields on it. A value of 0 positions the points at the centroid of the cell; a value of 1 leaves them at their original positions. + diff --git a/src/Plugins/MEDReader/Test/Baselines/testMEDReader20.png b/src/Plugins/MEDReader/Test/Baselines/testMEDReader20.png new file mode 100644 index 0000000000000000000000000000000000000000..bd87d10582b215bb78eb4a9134446d33459ef1b5 GIT binary patch literal 19364 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 VHGiy~2OnQSXx}3~HQvWl{sC)q-(>&* literal 0 HcmV?d00001 diff --git a/src/Plugins/MEDReader/Test/CMakeLists.txt b/src/Plugins/MEDReader/Test/CMakeLists.txt index d3ecf847..fd295007 100644 --- a/src/Plugins/MEDReader/Test/CMakeLists.txt +++ b/src/Plugins/MEDReader/Test/CMakeLists.txt @@ -17,7 +17,7 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -SET(TEST_NUMBERS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19) +SET(TEST_NUMBERS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20) SET(TEST_INSTALL_DIRECTORY ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test/MEDReader) diff --git a/src/Plugins/MEDReader/Test/testMEDReader20.py b/src/Plugins/MEDReader/Test/testMEDReader20.py new file mode 100644 index 00000000..f8ec9d54 --- /dev/null +++ b/src/Plugins/MEDReader/Test/testMEDReader20.py @@ -0,0 +1,191 @@ +# -*- coding: iso-8859-1 -*- +# Copyright (C) 2015-2016 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# Author : Anthony Geay (EDF R&D) + +from paraview.simple import * + +from MEDLoader import * + +""" This is a non regression EDF12599""" +fname="testMEDReader20.med" +imgName="testMEDReader20.png" +fieldName="MyField" +meshName="mesh" +m=MEDFileUMesh() +m0=MEDCouplingUMesh(meshName,1) +m0.setCoords(DataArrayDouble([(0.,0.,0),(1.,0.,0.),(2.,0.,0.)])) +m0.allocateCells() +m0.insertNextCell(NORM_SEG2,[0,1]) +m0.insertNextCell(NORM_SEG2,[1,2]) +m[0]=m0 +# +f=MEDCouplingFieldDouble(ON_GAUSS_NE) ; f.setName(fieldName) +f.setMesh(m0) ; f.setArray(DataArrayDouble([1.,7.,3.,2.])) +MEDLoader.WriteField(fname,f,True) +######## +testTotomed = MEDReader(FileName=fname) +testTotomed.AllArrays = ['TS0/%s/ComSup0/%s@@][@@GSSNE'%(meshName,fieldName)] +testTotomed.AllTimeSteps = ['0000'] +# get active view +renderView1 = GetActiveViewOrCreate('RenderView') +# uncomment following to set a specific view size +# renderView1.ViewSize = [739, 503] + +# show data in view +testTotomedDisplay = Show(testTotomed, renderView1) +# trace defaults for the display properties. +testTotomedDisplay.ColorArrayName = [None, ''] +testTotomedDisplay.GlyphType = 'Arrow' +testTotomedDisplay.ScalarOpacityUnitDistance = 1.5874010519681994 +testTotomedDisplay.SelectUncertaintyArray = [None, ''] +testTotomedDisplay.UncertaintyTransferFunction = 'PiecewiseFunction' +testTotomedDisplay.OpacityArray = [None, ''] +testTotomedDisplay.RadiusArray = [None, ''] +testTotomedDisplay.RadiusRange = [0.0, 2.0] +testTotomedDisplay.ConstantRadius = 2.0 +testTotomedDisplay.PointSpriteDefaultsInitialized = 1 +testTotomedDisplay.SelectInputVectors = [None, ''] +testTotomedDisplay.WriteLog = '' + +# reset view to fit data +renderView1.ResetCamera() + +#changing interaction mode based on data extents +renderView1.InteractionMode = '2D' +renderView1.CameraPosition = [1.0, 10000.0, 10000.0] +renderView1.CameraFocalPoint = [1.0, 0.0, 0.0] +renderView1.CameraViewUp = [1.0, 1.0, 0.0] + +# set scalar coloring +ColorBy(testTotomedDisplay, ('FIELD', 'vtkBlockColors')) + +# show color bar/color legend +testTotomedDisplay.SetScalarBarVisibility(renderView1, True) + +# get color transfer function/color map for 'vtkBlockColors' +vtkBlockColorsLUT = GetColorTransferFunction('vtkBlockColors') + +# get opacity transfer function/opacity map for 'vtkBlockColors' +vtkBlockColorsPWF = GetOpacityTransferFunction('vtkBlockColors') + +# create a new 'ELNO Mesh' +eLNOMesh1 = ELNOMesh(Input=testTotomed) + +# Properties modified on eLNOMesh1 +eLNOMesh1.ShrinkFactor = 0.5 # <- test is here !!!!!!!! + +# show data in view +eLNOMesh1Display = Show(eLNOMesh1, renderView1) +# trace defaults for the display properties. +eLNOMesh1Display.ColorArrayName = [None, ''] +eLNOMesh1Display.GlyphType = 'Arrow' +eLNOMesh1Display.ScalarOpacityUnitDistance = 1.1905507889761495 +eLNOMesh1Display.SelectUncertaintyArray = ['POINTS', 'MyField'] +eLNOMesh1Display.UncertaintyTransferFunction = 'PiecewiseFunction' +eLNOMesh1Display.OpacityArray = [None, ''] +eLNOMesh1Display.RadiusArray = [None, ''] +eLNOMesh1Display.RadiusRange = [0.25, 1.75] +eLNOMesh1Display.ConstantRadius = 1.75 +eLNOMesh1Display.PointSpriteDefaultsInitialized = 1 +eLNOMesh1Display.SelectInputVectors = [None, ''] +eLNOMesh1Display.WriteLog = '' + +# hide data in view +Hide(testTotomed, renderView1) + +# set scalar coloring +ColorBy(eLNOMesh1Display, ('FIELD', 'vtkBlockColors')) + +# show color bar/color legend +eLNOMesh1Display.SetScalarBarVisibility(renderView1, False) + +# set scalar coloring +ColorBy(eLNOMesh1Display, ('POINTS', 'MyField')) + +# rescale color and/or opacity maps used to include current data range +eLNOMesh1Display.RescaleTransferFunctionToDataRange(True) + +# show color bar/color legend +eLNOMesh1Display.SetScalarBarVisibility(renderView1, False) + +# get color transfer function/color map for 'MyField' +myFieldLUT = GetColorTransferFunction('MyField') + +# get opacity transfer function/opacity map for 'MyField' +myFieldPWF = GetOpacityTransferFunction('MyField') + +# hide color bar/color legend +eLNOMesh1Display.SetScalarBarVisibility(renderView1, False) + +# create a new 'Glyph' +glyph1 = Glyph(Input=eLNOMesh1, + GlyphType='Arrow') +glyph1.Scalars = ['POINTS', 'MyField'] +glyph1.Vectors = ['POINTS', 'None'] +glyph1.ScaleFactor = 0.15000000000000002 +glyph1.GlyphTransform = 'Transform2' + +# Properties modified on glyph1 +glyph1.GlyphType = 'Sphere' +glyph1.ScaleFactor = 0.15 + +# show data in view +glyph1Display = Show(glyph1, renderView1) +# trace defaults for the display properties. +glyph1Display.ColorArrayName = ['POINTS', 'MyField'] +glyph1Display.LookupTable = myFieldLUT +glyph1Display.GlyphType = 'Arrow' +glyph1Display.SelectUncertaintyArray = ['POINTS', 'MyField'] +glyph1Display.UncertaintyTransferFunction = 'PiecewiseFunction' +glyph1Display.OpacityArray = [None, ''] +glyph1Display.RadiusArray = [None, ''] +glyph1Display.RadiusRange = [0.17688040435314178, 1.8231196403503418] +glyph1Display.ConstantRadius = 1.8231196403503418 +glyph1Display.PointSpriteDefaultsInitialized = 1 +glyph1Display.SelectInputVectors = ['POINTS', 'Normals'] +glyph1Display.WriteLog = '' + +# show color bar/color legend +glyph1Display.SetScalarBarVisibility(renderView1, True) + +#### saving camera placements for all active views + +# current camera placement for renderView1 +renderView1.InteractionMode = '2D' +renderView1.CameraPosition = [0.9999999999999908, 9999.999999999995, 9999.999999999993] +renderView1.CameraFocalPoint = [1.0, 0.0, 0.0] +renderView1.CameraViewUp = [0.6331899945158901, 0.547298104713038, -0.5472981047130381] +renderView1.CameraParallelScale = 0.6930835077290218 +renderView1.ViewSize = [739,503] + +import os +import sys +try: + baselineIndex = sys.argv.index('-B')+1 + baselinePath = sys.argv[baselineIndex] +except: + print "Could not get baseline directory. Test failed." + exit(1) +baseline_file = os.path.join(baselinePath, imgName) +import vtk.test.Testing +vtk.test.Testing.VTK_TEMP_DIR = vtk.util.misc.vtkGetTempDir() +vtk.test.Testing.compareImage(GetActiveView().GetRenderWindow(), baseline_file, threshold=25) +vtk.test.Testing.interact() + -- 2.39.2