663 os <<
"View parameters and options:";
665 os <<
"\n Drawing style: ";
666 switch (v.fDrawingStyle) {
668 os <<
"edges, wireframe";
break;
670 os <<
"edges, hidden line removal";
break;
672 os <<
"surfaces, hidden surface removal";
break;
674 os <<
"surfaces and edges, hidden line and surface removal";
break;
675 default: os <<
"unrecognised";
break;
678 os <<
"\n Auxiliary edges: ";
679 if (!v.fAuxEdgeVisible) os <<
"in";
682 os <<
"\n Culling: ";
683 if (v.fCulling) os <<
"on";
686 os <<
"\n Culling invisible objects: ";
687 if (v.fCullInvisible) os <<
"on";
690 os <<
"\n Density culling: ";
691 if (v.fDensityCulling) {
692 os <<
"on - invisible if density less than "
693 << v.fVisibleDensity / (1. *
g /
cm3) <<
" g cm^-3";
697 os <<
"\n Culling daughters covered by opaque mothers: ";
698 if (v.fCullCovered) os <<
"on";
701 os <<
"\n Section flag: ";
702 if (v.fSection) os <<
"true, section/cut plane: " << v.fSectionPlane;
706 os <<
"\n Cutaway planes: ";
707 for (
size_t i = 0; i < v.fCutawayPlanes.size (); i++) {
708 os <<
' ' << v.fCutawayPlanes[i];
712 os <<
"\n No cutaway planes";
715 os <<
"\n Explode factor: " << v.fExplodeFactor
716 <<
" about centre: " << v.fExplodeCentre;
718 os <<
"\n No. of sides used in circle polygon approximation: "
721 os <<
"\n Viewpoint direction: " << v.fViewpointDirection;
723 os <<
"\n Up vector: " << v.fUpVector;
725 os <<
"\n Field half angle: " << v.fFieldHalfAngle;
727 os <<
"\n Zoom factor: " << v.fZoomFactor;
729 os <<
"\n Scale factor: " << v.fScaleFactor;
731 os <<
"\n Current target point: " << v.fCurrentTargetPoint;
733 os <<
"\n Dolly distance: " << v.fDolly;
736 if (v.fLightsMoveWithCamera) os <<
"moves";
737 else os <<
"does not move";
738 os <<
" with camera";
740 os <<
"\n Relative lightpoint direction: "
741 << v.fRelativeLightpointDirection;
743 os <<
"\n Actual lightpoint direction: "
744 << v.fActualLightpointDirection;
746 os <<
"\n Derived parameters for standard view of object of unit radius:";
749 tempVP.fZoomFactor = 1.;
757 os <<
"\n Camera distance: " << cameraDistance;
758 os <<
"\n Near distance: " << nearDistance;
759 os <<
"\n Far distance: " << farDistance;
760 os <<
"\n Front half height: " <<
right;
762 os <<
"\n Default VisAttributes:\n " << v.fDefaultVisAttributes;
764 os <<
"\n Default TextVisAttributes:\n " << v.fDefaultTextVisAttributes;
766 os <<
"\n Default marker: " << v.fDefaultMarker;
768 os <<
"\n Global marker scale: " << v.fGlobalMarkerScale;
770 os <<
"\n Global lineWidth scale: " << v.fGlobalLineWidthScale;
773 if (v.fMarkerNotHidden) os <<
"not ";
774 os <<
"hidden by surfaces.";
776 os <<
"\n Window size hint: "
777 << v.fWindowSizeHintX <<
'x'<< v.fWindowSizeHintX;
779 os <<
"\n X geometry string: " << v.fXGeometryString;
780 os <<
"\n X geometry mask: "
781 << std::showbase << std::hex << v.fGeometryMask
782 << std::noshowbase << std::dec;
784 os <<
"\n Auto refresh: ";
785 if (v.fAutoRefresh) os <<
"true";
788 os <<
"\n Background colour: " << v.fBackgroundColour;
790 os <<
"\n Picking requested: ";
791 if (v.fPicking) os <<
"true";
794 os <<
"\n Rotation style: ";
795 switch (v.fRotationStyle) {
797 os <<
"constrainUpDirection (conventional HEP view)";
break;
799 os <<
"freeRotation (Google-like rotation, using mouse-grab)";
break;
800 default: os <<
"unrecognised";
break;
803 os <<
"\n Vis attributes modifiers: ";
804 const std::vector<G4ModelingParameters::VisAttributesModifier>& vams =
805 v.fVisAttributesModifiers;
G4double GetFarDistance(G4double cameraDistance, G4double nearDistance, G4double radius) const
G4double GetCameraDistance(G4double radius) const
G4double GetNearDistance(G4double cameraDistance, G4double radius) const
G4double GetFrontHalfHeight(G4double nearDistance, G4double radius) const