vtk+四面体2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | int main() { const int num_points = 5; static float x[num_points][3] = { {0,0,0},{1,0,0},{1,1,0},{0,1,0},{0.5,0.5,1} }; static vtkIdType pts[4][3] = { {0,1,4},{1,2,4},{2,3,4},{3,0,4} }; vtkNew<vtkPolyData> cube; vtkNew<vtkPoints> points; vtkNew<vtkCellArray> polys; vtkNew<vtkFloatArray> scalars; for ( int i = 0; i < num_points; i++) points->InsertPoint(i, x[i]); for ( int i = 0; i < 4; i++) polys->InsertNextCell(3, pts[i]); /*polys->InsertNextCell(4); for (int i = 0; i < 4; i++) { polys->InsertCellPoint(i); }*/ for ( int i = 0; i < num_points; i++) scalars->InsertTuple1(i, i); cube->SetPoints(points); cube->SetPolys(polys); cube->GetPointData()->SetScalars(scalars); vtkNew<vtkPolyDataMapper> cubeMapper; cubeMapper->SetInputData(cube); cubeMapper->SetScalarRange(0, 7); vtkNew<vtkActor> cubeActor; cubeActor->SetMapper(cubeMapper); vtkNew<vtkCamera> camera; camera->SetPosition(1, 1, 1); camera->SetFocalPoint(0, 0, 0); vtkNew<vtkRenderer> renderer; vtkNew<vtkRenderWindow> renWin; renWin->AddRenderer(renderer); vtkNew<vtkRenderWindowInteractor> iren; iren->SetRenderWindow(renWin); renderer->AddActor(cubeActor); renderer->SetActiveCamera(camera); renderer->ResetCamera(); renderer->SetBackground(1, 1, 1); renWin->SetSize(300, 300); renWin->Render(); iren->Initialize(); iren->Start(); return 0; } |
注意注释内容。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | vtkNew<vtkPolyData> cube; vtkNew<vtkPoints> points; vtkNew<vtkCellArray> lines; for ( int i = 0; i < num_points; i++) points->InsertPoint(i, x[i]); for ( int i = 0; i < num_points - 1; i++) { lines->InsertNextCell(2); lines->InsertCellPoint(i); lines->InsertCellPoint(num_points - 1); lines->InsertNextCell(2); lines->InsertCellPoint(i); lines->InsertCellPoint((i + 1) % (num_points - 1)); } cube->SetPoints(points); cube->SetLines(lines); |
线框模型的表达方法。
------------恢复内容结束------------
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧