From 282f75b812cc3b92a71e70ee0ed70fd4298b9631 Mon Sep 17 00:00:00 2001 From: Xinhua Zhang <sean.xinhua.zhang@gmail.com> Date: Wed, 4 Dec 2024 22:59:31 -0500 Subject: [PATCH] Updated Test File for AMR Data --- .../Cxx/TestVectorFieldTopologyAMR.cxx | 23 ++++++++++++++----- .../TestVectorFieldTopologyAMR.png.sha512 | 2 +- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/Filters/FlowPaths/Testing/Cxx/TestVectorFieldTopologyAMR.cxx b/Filters/FlowPaths/Testing/Cxx/TestVectorFieldTopologyAMR.cxx index 73f4e469d9d..9ce75b5659c 100644 --- a/Filters/FlowPaths/Testing/Cxx/TestVectorFieldTopologyAMR.cxx +++ b/Filters/FlowPaths/Testing/Cxx/TestVectorFieldTopologyAMR.cxx @@ -14,6 +14,7 @@ #include "vtkAMRGaussianPulseSource.h" #include "vtkActor.h" #include "vtkArrayCalculator.h" +#include "vtkCompositeDataGeometryFilter.h" #include "vtkDataSetMapper.h" #include "vtkMath.h" #include "vtkNew.h" @@ -30,24 +31,30 @@ #include "vtkStreamSurface.h" #include "vtkVectorFieldTopology.h" #include "vtkWarpScalar.h" +#include <vtkXMLUniformGridAMRWriter.h> int TestVectorFieldTopologyAMR(int argc, char* argv[]) { vtkNew<vtkAMRGaussianPulseSource> wavelet; - vtkNew<vtkArrayCalculator> calc; calc->AddCoordinateScalarVariable("coordsX", 0); calc->AddCoordinateScalarVariable("coordsY", 1); calc->AddCoordinateScalarVariable("coordsZ", 2); - calc->SetFunction("(coordsX+coordsZ)*iHat + coordsY*jHat + (coordsX-coordsZ)*kHat"); + calc->SetFunction("(coordsX+coordsZ-1)*iHat + coordsY*jHat + (coordsX-coordsZ+1)*kHat"); calc->SetInputConnection(wavelet->GetOutputPort()); calc->Update(); + // Now store this file to disk + vtkNew<vtkXMLUniformGridAMRWriter> writer; + writer->SetInputConnection(calc->GetOutputPort()); + writer->SetFileName("/Users/bujack/Downloads/output.vthb"); + writer->Write(); + vtkNew<vtkVectorFieldTopology> topology; topology->SetInputData(calc->GetOutput()); topology->SetIntegrationStepUnit(1); - topology->SetSeparatrixDistance(1); - topology->SetIntegrationStepSize(1); + topology->SetSeparatrixDistance(0.2); + topology->SetIntegrationStepSize(0.2); topology->SetMaxNumSteps(1000); topology->SetComputeSurfaces(true); topology->SetUseBoundarySwitchPoints(false); @@ -56,12 +63,16 @@ int TestVectorFieldTopologyAMR(int argc, char* argv[]) topology->Update(); // the bounding box + vtkNew<vtkCompositeDataGeometryFilter> geomFilter; + geomFilter->SetInputConnection(wavelet->GetOutputPort()); + geomFilter->Update(); + vtkNew<vtkDataSetMapper> waveletMapper; - waveletMapper->SetInputConnection(topology->GetOutputPort()); + waveletMapper->SetInputConnection(geomFilter->GetOutputPort()); vtkNew<vtkActor> waveletActor; waveletActor->SetMapper(waveletMapper); - waveletActor->GetProperty()->SetColor(0.4, 0.4, 0.4); + waveletActor->GetProperty()->SetColor(0.4, 0.4, 1.0); waveletActor->GetProperty()->SetOpacity(0.1); waveletActor->GetProperty()->SetRepresentationToSurface(); diff --git a/Filters/FlowPaths/Testing/Data/Baseline/TestVectorFieldTopologyAMR.png.sha512 b/Filters/FlowPaths/Testing/Data/Baseline/TestVectorFieldTopologyAMR.png.sha512 index 0fb2d5a536a..609e58f622d 100644 --- a/Filters/FlowPaths/Testing/Data/Baseline/TestVectorFieldTopologyAMR.png.sha512 +++ b/Filters/FlowPaths/Testing/Data/Baseline/TestVectorFieldTopologyAMR.png.sha512 @@ -1 +1 @@ -4863b3c221be6daaffe72be6283b537ad9d571153fa1e138c4b92a39a67eaa24f9f37c822f281383072229649db38f792d17a6d399217ca584415a194a4f5809 +16893e3e9e4eae5f39cee7850742618d04b34e42c5b2b7e8b098192a03888be19f15cdccf3ef8b47196ef1d28145fce444b57c37d81afa6efb91e9b882973f3c -- GitLab