54#include <vtkColorTransferFunction.h>
55#include <vtkContourValues.h>
56#include <vtkPiecewiseFunction.h>
57#include <vtkVolumeProperty.h>
71 G4cout <<
"G4VtkSceneHandler::AddPrimitive(const G4Polyline&)" <<
G4endl;
84 G4cout <<
"G4VtkSceneHandler::AddPrimitive(const G4Text& text)" <<
G4endl;
98 G4cout <<
"G4VtkSceneHandler::AddPrimitive(const G4Circle& circle)" <<
G4endl;
114 G4cout <<
"G4VtkSceneHandler::AddPrimitive(const G4Square& square)" <<
G4endl;
130 G4cout <<
"G4VtkSceneHandler::AddPrimitive(const G4Polyhedron& polyhedron)" <<
G4endl;
134 auto visAtt = vc.fViewer->GetApplicableVisAttributes(polyhedron.
GetVisAttributes());
135 auto colour = visAtt->GetColour();
138 vc.alpha = colour.GetAlpha();
139 vc.red = colour.GetRed();
140 vc.green = colour.GetGreen();
141 vc.blue = colour.GetBlue();
144 if (pPVModel !=
nullptr) {
145 vc.fDepth = pPVModel->GetCurrentDepth();
146 vc.fDescription = pPVModel->GetCurrentDescription();
192 G4cout <<
"G4VtkSceneHandler::ClearTransientStore()" <<
G4endl;
221 if (pv_model ==
nullptr) {
226 if (pPVModel ==
nullptr) {
241 G4Material* mat = pPVModel->GetCurrentMaterial();
243 G4double dens = mat->GetDensity() / (g / cm3);
244 G4int copyNo = pPVModel->GetCurrentPV()->GetCopyNo();
245 G4int depth = pPVModel->GetCurrentDepth();
249 G4cout <<
" density : " << dens <<
" [g/cm3]" <<
G4endl;
250 G4cout <<
" location: " << pPVModel->GetCurrentPV()->GetObjectTranslation() <<
G4endl;
251 G4cout <<
" Multiplicity : " << pPVModel->GetCurrentPV()->GetMultiplicity() <<
G4endl;
252 G4cout <<
" Is replicated? : " << pPVModel->GetCurrentPV()->IsReplicated() <<
G4endl;
253 G4cout <<
" Is parameterised? : " << pPVModel->GetCurrentPV()->IsParameterised() <<
G4endl;
254 G4cout <<
" top phys. vol. name : " << pPVModel->GetTopPhysicalVolume()->GetName() <<
G4endl;
261 G4cout <<
"G4VtkSceneHandler::AddCompound> mesh type " << mesh.
GetMeshType() <<
" "
G4GLOB_DLL std::ostream G4cout
G4double GetAlpha() const
G4double GetGreen() const
const G4String & GetName() const
MeshType GetMeshType() const
virtual G4bool IsReplicated() const =0
virtual EVolume VolumeType() const =0
G4LogicalVolume * GetLogicalVolume() const
virtual G4int GetMultiplicity() const
const G4String & GetName() const
virtual G4VPVParameterisation * GetParameterisation() const =0
virtual G4bool IsParameterised() const =0
G4VModel * GetModel() const
G4Transform3D fObjectTransformation
G4double GetMarkerSize(const G4VMarker &, MarkerSizeType &)
const G4VisAttributes * fpVisAttribs
G4bool fReadyForTransients
G4ViewParameters::DrawingStyle GetDrawingStyle(const G4VisAttributes *)
virtual void AddSolid(const G4Box &)
void StandardSpecialMeshRendering(const G4Mesh &)
const G4ViewParameters & GetViewParameters() const
SMROption GetSpecialMeshRenderingOption() const
DrawingStyle GetDrawingStyle() const
const G4Colour & GetColour() const
const G4VisAttributes * GetVisAttributes() const
G4String polyhedronPipelineType
void ClearTransientStore() override
void AddCompound(const G4Mesh &mesh) override
void AddPrimitive(const G4Polyline &) override
void SetPolyhedronPipeline(const G4String &str)
static G4int fSceneIdCount
void ClearStore() override
void AddSolid(const G4Box &box) override
G4VtkStore transientStore
G4VtkSceneHandler(G4VGraphicsSystem &system, const G4String &name)
G4VtkVisContext MakeDefaultVisContext()
void AddPrimitiveSeparate(const G4Polyhedron &polyhedron, const G4VtkVisContext &vc)
void AddPrimitiveTensorGlyph(const G4Polyhedron &polyhedron, const G4VtkVisContext &vc)
void AddPrimitiveTransformBake(const G4Polyhedron &polyhedron, const G4VtkVisContext &vc)
void AddPrimitiveAppend(const G4Polyhedron &polyhedron, const G4VtkVisContext &vc)
void AddCompound(const G4Mesh &mesh, const G4VtkVisContext &vc)
void AddPrimitive(const G4Polyline &polyline, const G4VtkVisContext &vc)