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/GlobalSystemOfUnits.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  "Tubs", go * 0. * cm / m, go * 1. * cm / m, go * 5. * cm / m); //COCOA internal units are meters
58 }
GlobalOptionMgr
Definition: GlobalOptionMgr.h:18
GlobalOptionMgr::getInstance
static GlobalOptionMgr * getInstance()
Definition: GlobalOptionMgr.cc:18
cuy.col
col
Definition: cuy.py:1010
gather_cfg.cout
cout
Definition: gather_cfg.py:144
GlobalOptionMgr.h
GlobalOptionMgr::getGlobalOptionValue
int getGlobalOptionValue(const ALIstring &sstr, ALIdouble &val)
--— Search a string in theGlobalOptions and return 1 if found
Definition: GlobalOptionMgr.cc:115
OpticalObject::theSolidShape
CocoaSolidShape * theSolidShape
Definition: OpticalObject.h:315
LightRay.h
CocoaSolidShapeTubs
Definition: CocoaSolidShapeTubs.h:14
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:72
OptOLaser::defaultBehaviour
void defaultBehaviour(LightRay &lightray, Measurement &meas) override
Definition: OptOLaser.cc:22
ALIUtils::debug
static ALIint debug
Definition: ALIUtils.h:34
Measurement
Definition: Measurement.h:27
submit.rm
rm
Definition: submit.py:77
OpticalObject::fillIguana
virtual void fillIguana()
Definition: OpticalObject.h:55
Measurement.h
OptOLaser::constructSolidShape
void constructSolidShape() override
Definition: OptOLaser.cc:51
LightRay
Definition: LightRay.h:20
ALIdouble
long double ALIdouble
Definition: CocoaGlobals.h:11
LightRay::startLightRay
void startLightRay(OpticalObject *opto)
Definition: LightRay.cc:26
CocoaSolidShapeTubs.h
OpticalObject::fillVRML
virtual void fillVRML()
Definition: OpticalObject.h:54
OptOLaser.h