// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen // SPDX-License-Identifier: BSD-3-Clause #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include int TestActor2D(int argc, char* argv[]) { vtkNew lut; lut->SetNumberOfTableValues(6); lut->SetTableRange(0.0, 1.0); vtkNew planeSource1; planeSource1->SetOrigin(0.0, 0.0, 0.0); planeSource1->SetPoint1(0.5, 0.0, 0.0); planeSource1->SetPoint2(0.0, 0.5, 0.0); vtkNew mapper1; mapper1->SetInputConnection(planeSource1->GetOutputPort()); mapper1->ScalarVisibilityOn(); mapper1->SetLookupTable(lut); mapper1->UseLookupTableScalarRangeOn(); mapper1->SetScalarModeToUsePointFieldData(); mapper1->ColorByArrayComponent("TextureCoordinates", 0); mapper1->InterpolateScalarsBeforeMappingOn(); vtkNew actor1; actor1->SetMapper(mapper1); actor1->GetProperty()->SetColor(1.0, 0.0, 0.0); vtkNew planeSource2; planeSource2->SetOrigin(-0.5, 0.0, 0.0); planeSource2->SetPoint1(0.0, 0.0, 0.0); planeSource2->SetPoint2(-0.5, 0.5, 0.0); vtkNew pCoord; pCoord->SetCoordinateSystemToWorld(); vtkNew coord; coord->SetCoordinateSystemToNormalizedViewport(); coord->SetReferenceCoordinate(pCoord); vtkNew mapper2; mapper2->SetInputConnection(planeSource2->GetOutputPort()); mapper2->SetLookupTable(lut); mapper2->ScalarVisibilityOff(); mapper2->SetTransformCoordinate(coord); vtkNew actor2; actor2->SetMapper(mapper2); actor2->GetProperty()->SetColor(1.0, 1.0, 0.0); vtkNew renderer; renderer->AddActor(actor1); renderer->AddActor(actor2); vtkNew renWin; renWin->AddRenderer(renderer); vtkNew iren; iren->SetRenderWindow(renWin); renWin->Render(); renderer->ResetCamera(); renderer->SetBackground(1.0, 0.0, 0.0); renWin->SetSize(300, 300); int retVal = vtkRegressionTestImage(renWin); if (retVal == vtkRegressionTester::DO_INTERACTOR) { iren->Start(); } return !retVal; }