88{
89 if ( ! hnVector.size() ) return true;
90
91 fViewer->plots().init_sg();
92
94 fViewer->plots().set_current_plotter(0);
95
96 auto result = true;
97 auto isWriteNeeded = false;
98
99 for (const auto& [ht, info] : hnVector) {
100 G4bool plotting = info->GetPlotting();
101 G4bool activation = info->GetActivation();
103
104
105 if ( ( ! plotting ) ||
107
108
109 fViewer->plot(*ht);
110 fViewer->set_current_plotter_style(fPlotParameters.
GetStyle());
111
112
113 tools::sg::plotter& plotter = fViewer->plots().current_plotter();
114
115 plotter.bins_style(0).color = tools::colorf_blue();
116
117
119 if ( ht->annotation(tools::histo::key_axis_x_title(), title) ) {
120 plotter.x_axis().title = title;
121 }
122 if ( ht->annotation(tools::histo::key_axis_y_title(), title) ) {
123 plotter.y_axis().title = title;
124 }
125 if ( ht->annotation(tools::histo::key_axis_z_title(), title) ) {
126 plotter.z_axis().title = title;
127 }
128
129#ifndef TOOLS_USE_FREETYPE
130 plotter.set_encoding_none();
131#endif
132
133
135 plotter.x_axis().labels_style().encoding = "PAW";
136 plotter.x_axis_is_log = true;
137 }
139 plotter.y_axis().labels_style().encoding = "PAW";
140 plotter.y_axis_is_log = true;
141 }
143 plotter.z_axis().labels_style().encoding = "PAW";
144 plotter.z_axis_is_log = true;
145 }
146 isWriteNeeded = true;
147
149
150
151 if (
G4int(fViewer->plots().current_index()) == (GetNofPlotsPerPage() - 1) ) {
152 result &= WritePage();
153 isWriteNeeded = false;
154 }
155
156
157 fViewer->plots().next();
158 }
159
160
161 if ( isWriteNeeded ) {
162 result &= WritePage();
163 }
164
165
166 return result;
167}
G4bool GetIsActivation() const
G4String GetStyle() const
const char * name(G4int ptype)