#include #include "vtkSmartPointer.h" #include "vtkOSPRayMaterialLibrary.h" void printSet(const std::set &container); void printVector(const std::vector &container); void printVectorDouble(const std::vector &container); int main() { const char *materialFile = "data/geometries.mtl"; vtkSmartPointer matlib = vtkSmartPointer::New(); cout << "Open " << materialFile << endl; matlib->ReadFile(materialFile); cout << "Parsed file OK, now check for expected contents." << endl; std::set mats = matlib->GetMaterialNames(); cout << "Materials are:" << endl; printSet(mats); auto ka = matlib->GetDoubleShaderVariable("Red", "Ka"); cout<<"ka of Red"<< endl; printVectorDouble(ka); auto kd = matlib->GetDoubleShaderVariable("Red", "Kd"); cout<<"kd of Red"<< endl; printVectorDouble(ka); } void printSet(const std::set &container) { auto it = container.begin(); while (it != container.end()) { cout << *it << "\t"; ++it; } cout< &container) { auto it = container.begin(); while (it != container.end()) { cout << *it << "\t"; ++it; } cout< &container) { auto it = container.begin(); while (it != container.end()) { cout << *it << "\t"; ++it; } cout<