When I click a volume in GL Viewer, its material and shape are easily extracted by mouse operation. However I cannot find a way to get positional information of the volume. Is there any way to get such kind of information through the viewer by simple mouse operation?
GL viewer knows the position and rotation matrix of the object in global space. In plain GL viewer you can see it in the “Geometry” tab after shift-clicking a volume.
If this is drawn via TGeoPainter, the actual position of the object is the result of compound transformations from the mother volume down to the physical shape. There can be several instances of the same logical shape but ROOT GL / EVE (when painting with TGeoPainter) only know the final transformation matrix and logical object id. One can not know the actual upwards path that leads from the selected object to the mother. [For CMS geometry browser we reimplement geom painter and are able to know the full path.]
In EVE the shift-left picking shows the actual TGeoVolume GUI editor. The volume knows nothing about where it is placed as it can be placed into several locations.
How do you draw things? Is it TGeo geometry? Do you use EVE / TEveGeoTopNode?
We could print out the position + other information in a sub-class of TGLEventHandler when an object is selected. Or you could try the cms geometry browser (at some point we gave it to ILC people so it should in principle be possible to view any TGeo geometry there … but you’ll be in trouble if you also want to add hits and trajectories – we would need to do some more work for that).
Sorry for delayed response. By some reason, I missed your comment til now.
I am using plain GL view and I successfully get information I want by the way you mentioned that getting “Geometry” tab by shift-clicking" a volume.
By the way, is the CMS geometry browser available from out side of CMS collaboration? And can it visualizae arbitral gdml file?