24using namespace std::string_literals;
30 std::unique_ptr<Browsable::RHolder>
fObject;
41 TGeoVolume *top = mgr->MakeBox(
"TOP",med,100,100,100);
42 mgr->SetTopVolume(top);
43 TGeoVolume *vol = mgr->MakeBox(
"BOX",med, 20,30,40);
63 std::string
GetKind()
const override {
return "geom"s; }
69 bool DrawElement(std::shared_ptr<Browsable::RElement> &elem,
const std::string & =
"")
override
83 if (!mgr || (mgr->GetListOfVolumes()->GetLast() < 0) || (mgr->GetVolume(vol->GetName()) != vol))
115 std::shared_ptr<RBrowserWidget>
Create(
const std::string &
name)
final
117 return std::make_shared<RBrowserGeomWidget>(
name);
R__EXTERN TGeoManager * gGeoManager
std::shared_ptr< RBrowserWidget > Create(const std::string &name) final
~RBrowserGeomProvider()=default
@ kActGeom
can be shown in geometry viewer
void SetTitle(const std::string &title)
void Show(const RWebDisplayArgs &args="", bool always_start_new_browser=false)
Show or update geometry in web window If web browser already started - just refresh drawing like "rel...
void SetGeometry(TGeoManager *mgr, const std::string &volname="")
assign new geometry to the viewer
std::string GetWindowAddr() const
Return URL address of web window used for geometry viewer.
void SetShowHierarchy(bool on=true)
Configures default hierarchy browser visibility, only has effect before showing web window.
void SetOnlyVolume(TGeoVolume *vol)
Draw only specified volume, special case when volume stored without valid geomanager.
The manager class for any TGeo geometry.
Base class describing materials.
Media are used to store properties related to tracking and which are useful only when using geometry ...
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
TGeoManager * GetGeoManager() const
virtual TGeoNode * AddNode(TGeoVolume *vol, Int_t copy_no, TGeoMatrix *mat=nullptr, Option_t *option="")
Add a TGeoNode to the list of nodes.
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
virtual void SetLineColor(Color_t lcolor)
Set the line color.