VTK  9.5.20251211
TestSingleTextActorInternal.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
3#include "vtkRegressionTestImage.h"
4#include "vtkTesting.h"
5
6#include "vtkProp.h"
7#include "vtkRenderWindow.h"
9#include "vtkRenderer.h"
10#include "vtkTextProperty.h"
11
12#include <iostream>
13
15{
16inline std::string InputText()
17{
18 return "0123456789.";
19}
20
21inline int CreatePipeline(
22 int argc, char* argv[], vtkProp* textActor, vtkTextProperty* textProperty, bool depthPeeling)
23{
26 iren->SetRenderWindow(renWin);
27
28 vtkNew<vtkRenderer> renderer;
29 renWin->AddRenderer(renderer);
30
31 renderer->SetBackground(0.0, 0.0, 0.5);
32 renWin->SetSize(300, 300);
33
34 if (depthPeeling)
35 {
36 renWin->SetMultiSamples(1);
37 renWin->SetAlphaBitPlanes(1);
38 renderer->SetUseDepthPeeling(1);
39 renderer->SetMaximumNumberOfPeels(200);
40 renderer->SetOcclusionRatio(0.1);
41 }
42
43 renderer->AddActor(textActor);
44
45 textProperty->SetJustificationToCentered();
46 textProperty->SetVerticalJustificationToCentered(); // default
47 textProperty->SetFontFamilyToArial(); // default.
48 textProperty->SetFontSize(36);
49
50 renWin->Render();
51 renderer->ResetCamera();
52
53 renWin->Render();
54 if (depthPeeling && !renderer->GetLastRenderingUsedDepthPeeling())
55 {
56 std::cerr << "depth peeling was not used\n";
57 }
58
59 // usual font issues so we up the tolerance a bit
60 // int retVal = vtkTesting::Test(argc, argv, renWin, 0.07);
61 int retVal = vtkRegressionTestImage(renWin);
62 if (retVal == vtkRegressionTester::DO_INTERACTOR)
63 {
64 iren->Start();
65 }
66
67 return !retVal;
68}
69}
Allocate and hold a VTK object.
Definition vtkNew.h:167
abstract superclass for all actors, volumes and annotations
Definition vtkProp.h:69
represent text properties.
void SetFontFamilyToArial()
Set/Get the font family.
void SetJustificationToCentered()
Set/Get the horizontal justification to left (default), centered, or right.
void SetVerticalJustificationToCentered()
Set/Get the vertical justification to bottom (default), middle, or top.
virtual void SetFontSize(int)
Set/Get the font size (in points).
int CreatePipeline(int argc, char *argv[], vtkProp *textActor, vtkTextProperty *textProperty, bool depthPeeling)