Compare commits
2 Commits
340cdbd7ed
...
5ad9c70825
Author | SHA1 | Date | |
---|---|---|---|
5ad9c70825 | |||
6178f294cd |
@ -1,18 +1,30 @@
|
||||
#include "aspect_ratio_filter.h"
|
||||
#include "vtkDataObject.h"
|
||||
|
||||
#include <vtkUnstructuredGrid.h>
|
||||
#include <vtkPointData.h>
|
||||
#include <vtkCellData.h>
|
||||
#include <vtkDoubleArray.h>
|
||||
#include <vtkCellIterator.h>
|
||||
#include <vtkInformation.h>
|
||||
#include <vtkInformationVector.h>
|
||||
|
||||
|
||||
vtkStandardNewMacro(AspectRatioFilter);
|
||||
|
||||
|
||||
// Ensure there is an "angles", 12 floats tuple array in the DataCell.
|
||||
int AspectRatioFilter::FillInputPortInformation(int port, vtkInformation *info) {
|
||||
vtkUnstructuredGridAlgorithm::FillInputPortInformation(port, info);
|
||||
// Ensure there is an "angles" array in the DataCell.
|
||||
vtkNew<vtkInformation> anglesField;
|
||||
anglesField->Set(vtkDataObject::FIELD_ASSOCIATION(), vtkDataObject::FIELD_ASSOCIATION_CELLS);
|
||||
anglesField->Set(vtkDataObject::FIELD_NAME(), "angles");
|
||||
anglesField->Set(vtkDataObject::FIELD_NUMBER_OF_COMPONENTS(), 12);
|
||||
anglesField->Set(vtkDataObject::FIELD_ARRAY_TYPE(), VTK_DOUBLE);
|
||||
|
||||
vtkNew<vtkInformationVector> fields;
|
||||
fields->Append(anglesField);
|
||||
info->Set(vtkAlgorithm::INPUT_REQUIRED_FIELDS(), fields);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,6 @@
|
||||
#include <vtkOpenGLProjectedTetrahedraMapper.h>
|
||||
#include <vtkUnstructuredGridReader.h>
|
||||
#include <vtkPiecewiseFunction.h>
|
||||
#include <vtkDoubleArray.h>
|
||||
|
||||
#include <array>
|
||||
#include <vector>
|
||||
@ -60,7 +59,7 @@ int main(int argc, char **argv) {
|
||||
/* Display angles in console. */
|
||||
anglesFilter->Update();
|
||||
vtkUnstructuredGrid *grid = anglesFilter->GetOutput();
|
||||
auto *angles = vtkDoubleArray::SafeDownCast(grid->GetCellData()->GetArray("angles"));
|
||||
auto *angles = grid->GetCellData()->GetArray("angles");
|
||||
for (ssize_t i = 0; i < angles->GetNumberOfTuples(); i++) {
|
||||
std::cout << "cell " << i << ": ";
|
||||
for (ssize_t j = 0; j < angles->GetNumberOfComponents(); j++) {
|
||||
@ -76,7 +75,7 @@ int main(int argc, char **argv) {
|
||||
/* Display aspect ratios in console. */
|
||||
aspectRatioFilter->Update();
|
||||
grid = aspectRatioFilter->GetOutput();
|
||||
auto *aspectRatios = vtkDoubleArray::SafeDownCast(grid->GetCellData()->GetArray("aspect_ratio"));
|
||||
auto *aspectRatios = grid->GetCellData()->GetArray("aspect_ratio");
|
||||
for (ssize_t i = 0; i < aspectRatios->GetNumberOfTuples(); i++) {
|
||||
std::cout << "cell " << i << ": "
|
||||
<< aspectRatios->GetTuple1(i) << "\n";
|
||||
|
Loading…
Reference in New Issue
Block a user