36 #ifdef G4VIS_BUILD_OPENGLXM_DRIVER 
   41 void G4OpenGLXmViewer::drawing_style_callback (Widget w, 
 
   46   G4OpenGLXmViewer* pView;
 
   47   XtVaGetValues (XtParent(w),
 
   73       (
"G4OpenGLXmViewer::drawing_style_callback",
 
   75        "Unrecognised case in drawing_style_callback.");
 
   78   pView->fVP.SetDrawingStyle (style);
 
   85 void G4OpenGLXmViewer::background_color_callback (Widget w, 
 
   90   G4OpenGLXmViewer* pView;
 
   91   XtVaGetValues (XtParent(w),
 
  105       SetBackgroundColour(
G4Colour(1.,1.,1.));  
 
  110       SetBackgroundColour(
G4Colour(0.,0.,0.));  
 
  115       (
"G4OpenGLXmViewer::background_color_callback",
 
  117        "Unrecognised case in background_color_callback.");
 
  125 void G4OpenGLXmViewer::transparency_callback (Widget w, 
 
  126                         XtPointer clientData, 
 
  130   G4OpenGLXmViewer* pView;
 
  131   XtVaGetValues (XtParent(w),
 
  138     pView->transparency_enabled = 
false;
 
  142     pView->transparency_enabled = 
true;
 
  147       (
"G4OpenGLXmViewer::transparency_callback",
 
  149        "Unrecognised case in transparency_callback.");
 
  152   pView->SetNeedKernelVisit (
true);
 
  158 void G4OpenGLXmViewer::antialias_callback (Widget w, 
 
  159                      XtPointer clientData, 
 
  163   G4OpenGLXmViewer* pView;
 
  164   XtVaGetValues (XtParent(w),
 
  171     pView->antialiasing_enabled = 
false;
 
  172     glDisable (GL_LINE_SMOOTH);
 
  173     glDisable (GL_POLYGON_SMOOTH);
 
  177     pView->antialiasing_enabled = 
true;
 
  178     glEnable (GL_LINE_SMOOTH);
 
  179     glHint (GL_LINE_SMOOTH_HINT, GL_NICEST);
 
  180     glEnable (GL_POLYGON_SMOOTH);
 
  181     glHint (GL_POLYGON_SMOOTH_HINT, GL_NICEST);
 
  186       (
"G4OpenGLXmViewer::antialias_callback",
 
  188        "Unrecognised case in antialiasing_callback.");
 
  196 void G4OpenGLXmViewer::haloing_callback (Widget w, 
 
  197                        XtPointer clientData, 
 
  201   G4OpenGLXmViewer* pView;
 
  202   XtVaGetValues (XtParent(w),
 
  209     pView->haloing_enabled = 
false;
 
  213     pView->haloing_enabled = 
true;
 
  218       (
"G4OpenGLXmViewer::haloing_callback",
 
  220        "Unrecognised case in haloing_callback.");
 
  228 void G4OpenGLXmViewer::aux_edge_callback (Widget w, 
 
  229                        XtPointer clientData, 
 
  233   G4OpenGLXmViewer* pView;
 
  234   XtVaGetValues (XtParent(w),
 
  241     pView->fVP.SetAuxEdgeVisible(
false);
 
  245     pView->fVP.SetAuxEdgeVisible(
true);
 
  250       (
"G4OpenGLXmViewer::aux_edge_callback",
 
  252        "Unrecognised case in aux_edge_callback.");
 
  255   pView->SetNeedKernelVisit (
true);
 
  261 void G4OpenGLXmViewer::projection_callback (Widget w, 
 
  262                       XtPointer clientData, 
 
  265   G4OpenGLXmViewer* pView = (G4OpenGLXmViewer*)clientData;
 
  267   G4int choice = get_int_userData (w);
 
  272       pView->fVP.SetFieldHalfAngle (0.);
 
  278       if (pView->fov > 89.5 || pView->fov <= 0.0) {
 
  279     G4cout << 
"Field half angle should be 0 < angle <= 89.5 degrees.";
 
  283     pView->fVP.SetFieldHalfAngle (pView->fov * 
deg);
 
  290     (
"G4OpenGLXmViewer::projection_callback",
 
  292      "Unrecognised choice made in projection_callback");
 
G4GLOB_DLL std::ostream G4cout
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
static constexpr double deg