From dea59da46acffaad24236c1ee2bb5db414e9b805 Mon Sep 17 00:00:00 2001 From: vr-group <account@vr.rwth-aachen.de> Date: Sun, 18 Jul 2021 09:34:58 +0200 Subject: [PATCH] Screw VTK. --- vtu_to_vti_converter/source/main.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/vtu_to_vti_converter/source/main.cpp b/vtu_to_vti_converter/source/main.cpp index fc7f906..3452196 100644 --- a/vtu_to_vti_converter/source/main.cpp +++ b/vtu_to_vti_converter/source/main.cpp @@ -1,11 +1,14 @@ #include <cstdint> +#include <iostream> #include <string> #include <vtkDataObject.h> +#include <vtkImageData.h> #include <vtkResampleToImage.h> #include <vtkSmartPointer.h> #include <vtkXMLImageDataWriter.h> #include <vtkXMLUnstructuredGridReader.h> +#include <vtkUnstructuredGrid.h> // Usage: ./vtu_to_vti_converter [VTU_FILEPATH] [X_RESOLUTION] [Y_RESOLUTION] [Z_RESOLUTION]. std::int32_t main(std::int32_t argc, char** argv) @@ -16,15 +19,23 @@ std::int32_t main(std::int32_t argc, char** argv) auto converter = vtkSmartPointer<vtkResampleToImage> ::New(); auto writer = vtkSmartPointer<vtkXMLImageDataWriter> ::New(); + std::cout << "Reading unstructured grid.\n"; reader ->SetFileName (filepath.c_str()); reader ->SetInputArrayToProcess(0, 0, 0, vtkDataObject::FIELD_ASSOCIATION_CELLS, "Q"); + reader ->Update (); + auto input_data = reader->GetOutput(); - converter->SetInputConnection (reader->GetOutputPort()); + std::cout << "Converting unstructured grid to structured grid.\n"; + converter->SetInputDataObject (input_data); converter->SetUseInputBounds (true); converter->SetSamplingDimensions (std::stoi(argv[2]), std::stoi(argv[3]), std::stoi(argv[4])); + converter->Update (); + auto output_data = converter->GetOutput(); - writer ->SetInputConnection (converter->GetOutputPort()); + std::cout << "Writing structured grid.\n"; + writer ->SetInputData (output_data); writer ->SetFileName ((filepath.substr(0, filepath.size() - 3) + std::string("vti")).c_str()); + writer ->SetInputArrayToProcess(0, 0, 0, vtkDataObject::FIELD_ASSOCIATION_POINTS, "Q"); writer ->Update (); return 0; -- GitLab