62void G4XXXSGSceneHandler::PrintThings() {
64 " with transformation "
65 << (
void*)fpObjectTransformation;
71 G4cout <<
"(not from a model)";
77 "\n current physical volume: "
79 "\n current logical volume: "
82 "\n current depth of geometry tree: "
96 if (pPVModel && !pLVModel) {
105 typedef std::vector<PVNodeID> PVPath;
131 static G4int index = 0;
230 "G4XXXSGSceneHandler::AddSolid(const G4Box& box) called for "
235 std::ostringstream oss;
241 "Length")).
strip() <<
')' << std::endl;
248 "G4XXXSGSceneHandler::AddPrimitive(const G4Polyline& polyline) called.\n"
256 std::ostringstream oss;
257 oss << polyline << std::endl;
264 "G4XXXSGSceneHandler::AddPrimitive(const G4Text& text) called.\n"
274 std::ostringstream oss;
275 oss << text << std::endl;
282 "G4XXXSGSceneHandler::AddPrimitive(const G4Circle& circle) called.\n"
304 std::ostringstream oss;
305 oss << circle << std::endl;
312 "G4XXXSGSceneHandler::AddPrimitive(const G4Square& square) called.\n"
334 std::ostringstream oss;
335 oss << square << std::endl;
342 "G4XXXSGSceneHandler::AddPrimitive(const G4Polyhedron& polyhedron) called.\n"
347 std::ostringstream oss;
371 switch (drawing_style) {
425 G4bool found =
false;
size_t foundPosition = 0;
426 for (
size_t i = 0; i < node->
fDaughters.size(); ++i) {
437 if (pathLength == 1) {
439 node->
fDaughters[foundPosition]->fIndex = index;
448 Insert(pvPath+1,--pathLength,index,
452 Insert(pvPath+1,--pathLength,index,
460 static G4int depth = -1;
464 const size_t& nDaughters = node->
fDaughters.size();
466 if (!thisPhysicalVolume) os <<
"Root" << std::endl;
468 for (
G4int i = 0; i < depth; ++i) os <<
"__";
471 << thisIndex <<
")" << std::endl;;
473 for (
size_t i = 0; i < nDaughters; ++i) {
481 const size_t& nDaughters = node->
fDaughters.size();
482 for (
size_t i = 0; i < nDaughters; ++i) {
G4GLOB_DLL std::ostream G4cout
G4double GetYHalfLength() const
G4double GetZHalfLength() const
G4double GetXHalfLength() const
const G4String & GetName() const
G4VPhysicalVolume * GetPhysicalVolume() const
const std::vector< G4PhysicalVolumeNodeID > & GetDrawnPVPath() const
G4VPhysicalVolume * GetCurrentPV() const
G4LogicalVolume * GetCurrentLV() const
G4int GetCurrentDepth() const
G4String strip(G4int strip_Type=trailing, char c=' ')
virtual G4String GetCurrentDescription() const
virtual G4String GetCurrentTag() const
const G4String & GetName() const
virtual void EndPrimitives()
G4double GetMarkerSize(const G4VMarker &, MarkerSizeType &)
virtual void PreAddSolid(const G4Transform3D &objectTransformation, const G4VisAttributes &)
virtual void PostAddSolid()
G4ViewParameters::DrawingStyle GetDrawingStyle(const G4VisAttributes *)
virtual void BeginPrimitives(const G4Transform3D &objectTransformation=G4Transform3D())
const G4VisAttributes * GetVisAttributes() const
void CreateCurrentItem(const G4String &)
G4XXXSGSceneHandler(G4VGraphicsSystem &system, const G4String &name)
static G4int fSceneIdCount
void AddPrimitive(const G4Polyline &)
void PreAddSolid(const G4Transform3D &objectTransformation, const G4VisAttributes &)
void ClearTransientStore()
void BeginPrimitives(const G4Transform3D &objectTransformation)
void AddSolid(const G4Box &)
virtual ~G4XXXSGSceneHandler()
G4int GetNoFacets() const
void PrintTree(std::ostream &, Node *)
void Insert(const PVNodeID *pvPath, size_t pathLength, G4int index, Node *node)
std::vector< Node * > fDaughters