Bir stl dosyasından bir örgü verisini okumak ve bir pencerede göstermek için aşağıdaki koda sahibim. Kod iyi çalışıyor; ama bazı veri işlemlerini yapmak için köşe ve dizin dizilerine erişmem gerekiyor; örgü değiştirmek ve daha sonra render. Kafesin köşelerinin koordinatlarına sahip olan dizilere ve kafesin üçgenlerinin oluşturulmasındaki indeks numaralarına erişimin nasıl mümkün olabileceğini merak ediyordum. Çok basit bir adım gibi görünüyor ama VTK'nın wiki'sinde herhangi bir cevap bulamadım.VTL'de STLreader'dan elde edilen bir ağın köşe ve dizin dizisine nasıl erişilir?
int main (int argc, char *argv[]) { std::string inputFilename = "Scapula.stl"; vtkSmartPointer<vtkSTLReader> reader = vtkSmartPointer<vtkSTLReader>::New(); reader->SetFileName(inputFilename.c_str()); reader->Update(); // Visualize vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New(); mapper->SetInputConnection(reader->GetOutputPort()); vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New(); actor->SetMapper(mapper); vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New(); vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New(); renderWindow->AddRenderer(renderer); vtkSmartPointer<vtkRenderWindowInteractor> renderWindowInteractor = vtkSmartPointer<vtkRenderWindowInteractor>::New(); renderWindowInteractor->SetRenderWindow(renderWindow); renderer->AddActor(actor); renderer->SetBackground(.3, .6, .3); // Background color green renderWindow->Render(); renderWindowInteractor->Start(); return EXIT_SUCCESS; }
Bu örnek bana çok yardımcı oldu. Teşekkür ederim. Ayrıca bunlardan bahsedilebilir: vtkSmartPointer faceIndex = vtkSmartPointer :: New(); –
eidelen