Я вернусь к ВТК. Это часть моего кода:Как читать данные в vtkDataArray?
vtkDataSetReader *rdr = vtkDataSetReader::New();
rdr->SetFileName("proj7b.vtk");
rdr->SetScalarsName("hardyglobal");
rdr->Update();
int dims[3];
vtkRectilinearGrid *rgrid = (vtkRectilinearGrid *) rdr->GetOutput();
rgrid->GetDimensions(dims);
vtkDataArray *dataArray;
dataArray = vtkDoubleArray::New();
dataArray = rgrid->GetPointData()->GetScalars()->GetVoidPointer(0);
for(i=0;i<10;i++)
{
cout<<"here----------"<<endl;
cout<<" "<<dataArray[i]<<" ";
}
Я хочу, чтобы прочитать эти данные в моей vtkDataArray. Но этот код не подлежит компиляции:
proj7b.cxx:525:15: error:
assigning to 'vtkDataArray *' from incompatible type 'void *'
dataArray = rgrid->GetPointData()->GetScalars()->GetVoidPointer(0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 возникшая ошибка. Есть ли кто-нибудь знает, как читать данные в vtkDataArray?
сообщение об ошибке само за себя. Вы указатель на «что-то» на vtkDataArray. Вам необходимо убедиться: 1.) убедитесь, что это «что-то» может быть представлено vtkDataArray. 2.) использовать static_cast() –
Nandu