CMS 3D CMS Logo

OptOLaser.cc
Go to the documentation of this file.
1 // COCOA class implementation file
2 //Id: OptOLaser.cc
3 //CAT: Model
4 //
5 // History: v1.0
6 // Pedro Arce
7 
11 #ifdef COCOA_VIS
12 #include "Alignment/CocoaVisMgr/interface/ALIVRMLMgr.h"
13 #include "Alignment/IgCocoaFileWriter/interface/IgCocoaFileMgr.h"
14 #endif
15 #include <CLHEP/Units/SystemOfUnits.h>
18 
19 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
20 //@@ default behaviour: create a LightRay object
21 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
23  if (ALIUtils::debug >= 3)
24  std::cout << "create laser lightray " << std::endl;
25  lightray.startLightRay(this);
26 }
27 
28 #ifdef COCOA_VIS
29 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
30 void OptOLaser::fillVRML() {
31  ALIVRMLMgr& vrmlmgr = ALIVRMLMgr::getInstance();
32  ALIColour* col = new ALIColour(1., 0., 0., 0.);
33  vrmlmgr.AddBox(*this, 0.2, 0.2, 0.5, col);
34  vrmlmgr.SendReferenceFrame(*this, 0.12);
35  vrmlmgr.SendName(*this, 0.1);
36 }
37 
38 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
39 void OptOLaser::fillIguana() {
40  ALIColour* col = new ALIColour(1., 0., 0., 0.);
41  std::vector<ALIdouble> spar;
42  spar.push_back(1.);
43  spar.push_back(5.);
44  CLHEP::HepRotation rm;
45  rm.rotateX(90. * deg);
46  IgCocoaFileMgr::getInstance().addSolid(*this, "CYLINDER", spar, col, CLHEP::Hep3Vector(), rm);
47 }
48 #endif
49 
50 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
52  ALIdouble go;
54  gomgr->getGlobalOptionValue("VisScale", go);
55 
57  go * 0. * CLHEP::cm / CLHEP::m,
58  go * 1. * CLHEP::cm / CLHEP::m,
59  go * 5. * CLHEP::cm / CLHEP::m); //COCOA internal units are meters
60 }
def rm(path, rec=False)
Definition: eostools.py:363
long double ALIdouble
Definition: CocoaGlobals.h:11
void constructSolidShape() override
Definition: OptOLaser.cc:51
CocoaSolidShape * theSolidShape
virtual void fillVRML()
Definition: OpticalObject.h:54
static ALIint debug
Definition: ALIUtils.h:34
static GlobalOptionMgr * getInstance()
int getGlobalOptionValue(const ALIstring &sstr, ALIdouble &val)
--— Search a string in theGlobalOptions and return 1 if found
void defaultBehaviour(LightRay &lightray, Measurement &meas) override
Definition: OptOLaser.cc:22
virtual void fillIguana()
Definition: OpticalObject.h:55
col
Definition: cuy.py:1009
void startLightRay(OpticalObject *opto)
Definition: LightRay.cc:26