| 19 | using std::string; |
| 20 | |
| 21 | int TestTreeMapView(int argc, char* argv[]) |
| 22 | { |
| 23 | VTK_CREATE(vtkTesting, testHelper); |
| 24 | testHelper->AddArguments(argc, const_cast<const char**>(argv)); |
| 25 | string dataRoot = testHelper->GetDataRoot(); |
| 26 | string treeFileName = dataRoot + "/Data/Infovis/XML/vtkclasses.xml"; |
| 27 | string graphFileName = dataRoot + "/Data/Infovis/XML/vtklibrary.xml"; |
| 28 | |
| 29 | // We need to put the graph and tree edges in different domains. |
| 30 | VTK_CREATE(vtkXMLTreeReader, reader1); |
| 31 | reader1->SetFileName(treeFileName.c_str()); |
| 32 | reader1->SetEdgePedigreeIdArrayName("tree edge"); |
| 33 | reader1->GenerateVertexPedigreeIdsOff(); |
| 34 | reader1->SetVertexPedigreeIdArrayName("id"); |
| 35 | |
| 36 | VTK_CREATE(vtkXMLTreeReader, reader2); |
| 37 | reader2->SetFileName(graphFileName.c_str()); |
| 38 | reader2->SetEdgePedigreeIdArrayName("graph edge"); |
| 39 | reader2->GenerateVertexPedigreeIdsOff(); |
| 40 | reader2->SetVertexPedigreeIdArrayName("id"); |
| 41 | |
| 42 | reader1->Update(); |
| 43 | reader2->Update(); |
| 44 | |
| 45 | VTK_CREATE(vtkTreeMapView, view); |
| 46 | view->DisplayHoverTextOff(); |
| 47 | view->SetTreeFromInputConnection(reader2->GetOutputPort()); |
| 48 | view->SetGraphFromInputConnection(reader1->GetOutputPort()); |
| 49 | |
| 50 | view->SetAreaColorArrayName("level"); |
| 51 | view->SetEdgeColorToSplineFraction(); |
| 52 | view->SetColorEdges(true); |
| 53 | view->SetAreaLabelArrayName("id"); |
| 54 | view->SetAreaHoverArrayName("id"); |
| 55 | view->SetAreaLabelVisibility(true); |
| 56 | view->SetAreaSizeArrayName("VertexDegree"); |
| 57 | view->Update(); |
| 58 | vtkRenderedTreeAreaRepresentation::SafeDownCast(view->GetRepresentation()) |
| 59 | ->SetGraphSplineType(vtkSplineGraphEdges::CUSTOM, 0); |
| 60 | |
| 61 | // Apply a theme to the views |
| 62 | vtkViewTheme* const theme = vtkViewTheme::CreateMellowTheme(); |
| 63 | view->ApplyViewTheme(theme); |
| 64 | theme->Delete(); |
| 65 | |
| 66 | view->GetRenderWindow()->SetMultiSamples(0); |
| 67 | view->GetRenderWindow()->SetAlphaBitPlanes(1); |
| 68 | view->Update(); |
| 69 | view->ResetCamera(); |
| 70 | |
| 71 | int retVal = vtkRegressionTestImage(view->GetRenderWindow()); |
| 72 | if (retVal == vtkRegressionTester::DO_INTERACTOR) |
| 73 | { |
| 74 | view->GetInteractor()->Initialize(); |
| 75 | view->GetInteractor()->Start(); |
| 76 | |
| 77 | retVal = vtkRegressionTester::PASSED; |
| 78 | } |
nothing calls this directly
no test coverage detected