如何访问 VTK 的 class 枚举字段
How to access VTK's class enumeration field
我在尝试访问以下代码中的枚举字段时遇到问题。
vtkSmartPointer<vtkGenericDataObjectReader> reader =
vtkSmartPointer<vtkGenericDataObjectReader>::New();
reader->SetFileName(file_name);
reader->Update();
vtkSmartPointer<vtkDataObject> vtk_data = reader->GetOutput();
vtkSmartPointer<vtkFieldData> points =
vtk_data->GetAttributesAsFieldData(vtkDataObject::AttributeTypes.POINT);
//points->PrintSelf(cout, 0);
但是我收到以下错误:
error: expected primary-expression before ‘int’
vtk_data->GetAttributesAsFieldData(int(vtkDataObject::AttributeTypes.POINT));
对我来说(使用 GCC 8.1)以下编译没有任何错误。
#include <vtkDataObject.h>
int main(){
auto a = vtkDataObject::AttributeTypes::POINT;
return 0;
}
我在尝试访问以下代码中的枚举字段时遇到问题。
vtkSmartPointer<vtkGenericDataObjectReader> reader =
vtkSmartPointer<vtkGenericDataObjectReader>::New();
reader->SetFileName(file_name);
reader->Update();
vtkSmartPointer<vtkDataObject> vtk_data = reader->GetOutput();
vtkSmartPointer<vtkFieldData> points =
vtk_data->GetAttributesAsFieldData(vtkDataObject::AttributeTypes.POINT);
//points->PrintSelf(cout, 0);
但是我收到以下错误:
error: expected primary-expression before ‘int’ vtk_data->GetAttributesAsFieldData(int(vtkDataObject::AttributeTypes.POINT));
对我来说(使用 GCC 8.1)以下编译没有任何错误。
#include <vtkDataObject.h>
int main(){
auto a = vtkDataObject::AttributeTypes::POINT;
return 0;
}