Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4Text.hh
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27//
28//
29// John Allison 17/11/96.
30
31// Class Description:
32// Text, i.e., a character string, is used to visualize various kinds of
33// description, particle name, energy, coordinate names etc. Text is
34// described by the class G4Text. The following constructors are supported:
35//
36// //----- Constructors of G4Text
37// G4Text (const G4String& text);
38// G4Text (const G4String& text, const G4Point3D& pos);
39//
40// where the argument text is the text (string) to be visualized, and pos
41// is the 3D position at which the text is visualized. Note that class
42// G4Text inherits G4VMarker. Size of text is recognized as "font size",
43// i.e., height of the text. All the access functions defined for class
44// G4VMarker are available. In addition, the following access functions
45// are available, too:
46//
47// //----- Set functions of G4Text
48// void G4Text::SetText ( const G4String& text ) ;
49// void G4Text::SetOffset ( double dx, double dy ) ;
50//
51// //----- Get functions of G4Text
52// G4String G4Text::GetText () const;
53// G4double G4Text::GetXOffset () const;
54// G4double G4Text::GetYOffset () const;
55//
56// Method SetText() defines text to be visualized, and GetText() returns
57// the defined text. Method SetOffset() defines x (horizontal) and
58// y (vertical) offsets in the screen coordinates. By default, both offsets
59// are zero, and the text starts from the 3D position given to the
60// constructor or to the method G4VMarker:SetPosition(). Offsets should be
61// given with the same units as the one adopted for the size, i.e.,
62// world-size or screen-size units.
63// Class Description - End:
64
65
66#ifndef G4TEXT_HH
67#define G4TEXT_HH
68
69#include "G4VMarker.hh"
70#include "globals.hh"
71
72class G4Text: public G4VMarker {
73
74public: // With description
75
77 G4Text (const G4String& text = "none");
78 G4Text (const G4String& text, const G4Point3D& position);
79 G4Text (const G4VMarker&);
80 G4Text (const G4Text&) = default;
81 G4Text (G4Text&&) = default;
82 ~G4Text () override;
83 G4Text& operator= (const G4Text&) = default;
84 G4Text& operator= (G4Text&&) = default;
85
86 G4String GetText () const;
87 Layout GetLayout () const;
88
91
92 void SetText (const G4String& text);
94
95 void SetOffset (double dx, double dy) ;
96
97private:
98 G4String fText;
99 Layout fLayout;
100 G4double fXOffset, fYOffset;
101};
102
103#include "G4Text.icc"
104
105std::ostream& operator<< (std::ostream& os, const G4Text&);
106std::ostream& operator<< (std::ostream& os, G4Text::Layout);
107
108#endif
std::ostream & operator<<(std::ostream &os, const G4Text &)
Definition G4Text.cc:55
double G4double
Definition G4Types.hh:83
G4Text & operator=(const G4Text &)=default
~G4Text() override
Layout GetLayout() const
void SetLayout(Layout)
G4double GetYOffset() const
void SetText(const G4String &text)
G4double GetXOffset() const
G4Text(const G4String &text="none")
Definition G4Text.cc:33
void SetOffset(double dx, double dy)
G4String GetText() const
@ centre
Definition G4Text.hh:76
@ right
Definition G4Text.hh:76
@ left
Definition G4Text.hh:76
G4Text(const G4Text &)=default
G4Text(G4Text &&)=default