From 5b14b344210b615af80cbe13b6e94587b4c37b92 Mon Sep 17 00:00:00 2001 From: Charles Gueunet Date: Fri, 14 Oct 2022 14:06:36 +0200 Subject: [PATCH 1/3] Patch to use the vtkGeometryFilter Do we need to override both ? --- plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h | 6 +++--- plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h b/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h index 27a16de..20eab9a 100644 --- a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h +++ b/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h @@ -30,19 +30,19 @@ #ifndef vtkStaticDataSetSurfaceFilter_h #define vtkStaticDataSetSurfaceFilter_h -#include +#include #include #include "StaticMeshModuleModule.h" class vtkPolyData; -class STATICMESHMODULE_EXPORT vtkStaticDataSetSurfaceFilter : public vtkDataSetSurfaceFilter +class STATICMESHMODULE_EXPORT vtkStaticDataSetSurfaceFilter : public vtkGeometryFilter { public: static vtkStaticDataSetSurfaceFilter* New(); // vtkTypeMacro can't be used with a factory built object - using Superclass = vtkDataSetSurfaceFilter; + using Superclass = vtkGeometryFilter; void PrintSelf(ostream& os, vtkIndent indent) override; /** diff --git a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx index bb8f91a..deaace7 100644 --- a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx +++ b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx @@ -46,7 +46,7 @@ VTK_CREATE_CREATE_FUNCTION(vtkStaticPUnstructuredGridGhostCellsGenerator); //----------------------------------------------------------------------------- vtkStaticMeshObjectFactory::vtkStaticMeshObjectFactory() { - this->RegisterOverride("vtkDataSetSurfaceFilter", "vtkStaticDataSetSurfaceFilter", + this->RegisterOverride("vtkGeometryFilter", "vtkStaticDataSetSurfaceFilter", "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticDataSetSurfaceFilter); this->RegisterOverride("vtkPlaneCutter", "vtkStaticPlaneCutter", "StaticPlaneCutter", 1, vtkObjectFactoryCreatevtkStaticPlaneCutter); -- GitLab From 5f2f1d39497ea937635b7d3ff2717f11f940ef19 Mon Sep 17 00:00:00 2001 From: Charles Gueunet Date: Thu, 27 Oct 2022 14:28:32 +0200 Subject: [PATCH 2/3] Add missing VTK dependency and override both filters --- plugin/StaticMeshModule/vtk.module | 1 + plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx | 2 ++ 2 files changed, 3 insertions(+) diff --git a/plugin/StaticMeshModule/vtk.module b/plugin/StaticMeshModule/vtk.module index fd86d1c..6f42bfb 100644 --- a/plugin/StaticMeshModule/vtk.module +++ b/plugin/StaticMeshModule/vtk.module @@ -7,6 +7,7 @@ DEPENDS VTK::FiltersCore VTK::FiltersGeometry VTK::FiltersModeling + VTK::FiltersParallelDIY2 VTK::ImagingCore VTK::IOCore VTK::IOGeometry diff --git a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx index deaace7..67315c2 100644 --- a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx +++ b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx @@ -48,6 +48,8 @@ vtkStaticMeshObjectFactory::vtkStaticMeshObjectFactory() { this->RegisterOverride("vtkGeometryFilter", "vtkStaticDataSetSurfaceFilter", "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticDataSetSurfaceFilter); + this->RegisterOverride("vtkDataSetSurfaceFilter", "vtkStaticDataSetSurfaceFilter", + "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticDataSetSurfaceFilter); this->RegisterOverride("vtkPlaneCutter", "vtkStaticPlaneCutter", "StaticPlaneCutter", 1, vtkObjectFactoryCreatevtkStaticPlaneCutter); this->RegisterOverride("vtkEnSight6BinaryReader", "vtkStaticEnSight6BinaryReader", -- GitLab From b363896bf74700decec35e736ad52403cc132fd1 Mon Sep 17 00:00:00 2001 From: Charles Gueunet Date: Thu, 27 Oct 2022 14:43:34 +0200 Subject: [PATCH 3/3] Rename the Static filter to the real VTK one: DataSetFilter to Geometry --- plugin/StaticMeshModule/CMakeLists.txt | 2 +- ...eFilter.cxx => vtkStaticGeometryFilter.cxx} | 10 +++++----- ...rfaceFilter.h => vtkStaticGeometryFilter.h} | 18 +++++++++--------- .../vtkStaticMeshObjectFactory.cxx | 12 ++++++------ 4 files changed, 21 insertions(+), 21 deletions(-) rename plugin/StaticMeshModule/{vtkStaticDataSetSurfaceFilter.cxx => vtkStaticGeometryFilter.cxx} (94%) rename plugin/StaticMeshModule/{vtkStaticDataSetSurfaceFilter.h => vtkStaticGeometryFilter.h} (76%) diff --git a/plugin/StaticMeshModule/CMakeLists.txt b/plugin/StaticMeshModule/CMakeLists.txt index 5d8d541..ca4e0f5 100644 --- a/plugin/StaticMeshModule/CMakeLists.txt +++ b/plugin/StaticMeshModule/CMakeLists.txt @@ -1,9 +1,9 @@ set(private_classes - vtkStaticDataSetSurfaceFilter vtkStaticEnSight6BinaryReader vtkStaticEnSight6Reader vtkStaticEnSightGoldBinaryReader vtkStaticEnSightGoldReader + vtkStaticGeometryFilter vtkStaticPlaneCutter ) diff --git a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.cxx b/plugin/StaticMeshModule/vtkStaticGeometryFilter.cxx similarity index 94% rename from plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.cxx rename to plugin/StaticMeshModule/vtkStaticGeometryFilter.cxx index 43b701f..23623d2 100644 --- a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.cxx +++ b/plugin/StaticMeshModule/vtkStaticGeometryFilter.cxx @@ -1,7 +1,7 @@ /*========================================================================= Program: Visualization Toolkit - Module: vtkStaticDataSetSurfaceFilter.cxx + Module: vtkStaticGeometryFilter.cxx Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. @@ -12,7 +12,7 @@ PURPOSE. See the above copyright notice for more information. =========================================================================*/ -#include "vtkStaticDataSetSurfaceFilter.h" +#include "vtkStaticGeometryFilter.h" #include #include @@ -22,10 +22,10 @@ #include #include -vtkStandardNewMacro(vtkStaticDataSetSurfaceFilter); +vtkStandardNewMacro(vtkStaticGeometryFilter); //----------------------------------------------------------------------------- -int vtkStaticDataSetSurfaceFilter::UnstructuredGridExecute(vtkDataSet* input, vtkPolyData* output) +int vtkStaticGeometryFilter::UnstructuredGridExecute(vtkDataSet* input, vtkPolyData* output) { vtkUnstructuredGrid* inputUG = vtkUnstructuredGrid::SafeDownCast(input); if (!inputUG) @@ -167,7 +167,7 @@ int vtkStaticDataSetSurfaceFilter::UnstructuredGridExecute(vtkDataSet* input, vt } //---------------------------------------------------------------------------- -void vtkStaticDataSetSurfaceFilter::PrintSelf(ostream& os, vtkIndent indent) +void vtkStaticGeometryFilter::PrintSelf(ostream& os, vtkIndent indent) { this->Superclass::PrintSelf(os, indent); os << indent << "Cache: " << this->Cache << endl; diff --git a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h b/plugin/StaticMeshModule/vtkStaticGeometryFilter.h similarity index 76% rename from plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h rename to plugin/StaticMeshModule/vtkStaticGeometryFilter.h index 20eab9a..063c52c 100644 --- a/plugin/StaticMeshModule/vtkStaticDataSetSurfaceFilter.h +++ b/plugin/StaticMeshModule/vtkStaticGeometryFilter.h @@ -1,7 +1,7 @@ /*========================================================================= Program: Visualization Toolkit - Module: vtkStaticDataSetSurfaceFilter.h + Module: vtkStaticGeometryFilter.h Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. @@ -13,10 +13,10 @@ =========================================================================*/ /** - * @class vtkStaticDataSetSurfaceFilter + * @class vtkStaticGeometryFilter * @brief Extract the surface of a dataset, optimized for static unstructured grid * - * vtkStaticDataSetSurfaceFilter is a specialization of vtkDataSetSurfaceFilter + * vtkStaticGeometryFilter is a specialization of vtkGeometryFilter * that uses a cache to store the surface output and reuses it when associated data * changes over the time, but the geometry of a unstructured grid is static. * It is to be noted that, since ParaView use the same surface filter @@ -37,10 +37,10 @@ class vtkPolyData; -class STATICMESHMODULE_EXPORT vtkStaticDataSetSurfaceFilter : public vtkGeometryFilter +class STATICMESHMODULE_EXPORT vtkStaticGeometryFilter : public vtkGeometryFilter { public: - static vtkStaticDataSetSurfaceFilter* New(); + static vtkStaticGeometryFilter* New(); // vtkTypeMacro can't be used with a factory built object using Superclass = vtkGeometryFilter; void PrintSelf(ostream& os, vtkIndent indent) override; @@ -52,13 +52,13 @@ public: int UnstructuredGridExecute(vtkDataSet* input, vtkPolyData* output) override; protected: - vtkStaticDataSetSurfaceFilter() = default; - ~vtkStaticDataSetSurfaceFilter() override = default; + vtkStaticGeometryFilter() = default; + ~vtkStaticGeometryFilter() override = default; private: // Hide these from the user and the compiler. - vtkStaticDataSetSurfaceFilter(const vtkStaticDataSetSurfaceFilter&) = delete; - void operator=(const vtkStaticDataSetSurfaceFilter&) = delete; + vtkStaticGeometryFilter(const vtkStaticGeometryFilter&) = delete; + void operator=(const vtkStaticGeometryFilter&) = delete; vtkNew Cache; vtkMTimeType InputMeshTime = 0; diff --git a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx index 67315c2..b43adc1 100644 --- a/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx +++ b/plugin/StaticMeshModule/vtkStaticMeshObjectFactory.cxx @@ -19,7 +19,7 @@ #include #include -#include "vtkStaticDataSetSurfaceFilter.h" +#include "vtkStaticGeometryFilter.h" #include "vtkStaticEnSight6BinaryReader.h" #include "vtkStaticEnSight6Reader.h" #include "vtkStaticEnSightGoldBinaryReader.h" @@ -32,7 +32,7 @@ vtkStandardNewMacro(vtkStaticMeshObjectFactory); -VTK_CREATE_CREATE_FUNCTION(vtkStaticDataSetSurfaceFilter); +VTK_CREATE_CREATE_FUNCTION(vtkStaticGeometryFilter); VTK_CREATE_CREATE_FUNCTION(vtkStaticPlaneCutter); VTK_CREATE_CREATE_FUNCTION(vtkStaticEnSight6BinaryReader); VTK_CREATE_CREATE_FUNCTION(vtkStaticEnSight6Reader); @@ -46,10 +46,10 @@ VTK_CREATE_CREATE_FUNCTION(vtkStaticPUnstructuredGridGhostCellsGenerator); //----------------------------------------------------------------------------- vtkStaticMeshObjectFactory::vtkStaticMeshObjectFactory() { - this->RegisterOverride("vtkGeometryFilter", "vtkStaticDataSetSurfaceFilter", - "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticDataSetSurfaceFilter); - this->RegisterOverride("vtkDataSetSurfaceFilter", "vtkStaticDataSetSurfaceFilter", - "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticDataSetSurfaceFilter); + this->RegisterOverride("vtkGeometryFilter", "vtkStaticGeometryFilter", + "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticGeometryFilter); + this->RegisterOverride("vtkDataSetSurfaceFilter", "vtkStaticGeometryFilter", + "StaticDataSetSurfaceFilter", 1, vtkObjectFactoryCreatevtkStaticGeometryFilter); this->RegisterOverride("vtkPlaneCutter", "vtkStaticPlaneCutter", "StaticPlaneCutter", 1, vtkObjectFactoryCreatevtkStaticPlaneCutter); this->RegisterOverride("vtkEnSight6BinaryReader", "vtkStaticEnSight6BinaryReader", -- GitLab