CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
OptOLens.cc
Go to the documentation of this file.
1 // COCOA class implementation file
2 //Id: OptOLens.cc
3 //CAT: Model
4 //
5 // History: v1.0
6 // Pedro Arce
7 
9 #include <iostream>
10 #include <iomanip>
11 #include <cstdlib>
12 #include "CLHEP/Units/GlobalSystemOfUnits.h"
13 #ifdef COCOA_VIS
14 #include "Alignment/IgCocoaFileWriter/interface/IgCocoaFileMgr.h"
15 #include "Alignment/CocoaVisMgr/interface/ALIColour.h"
16 #endif
19 
20 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
22 {
23  setRmGlobalOriginal( CLHEP::HepRotation() );
24  setRmGlobal( CLHEP::HepRotation() );
25 }
26 
27 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
28 void OptOLens::participateInMeasurement( LightRay& lightray, Measurement& meas, const ALIstring& behav )
29 {
30  std::cerr << "object not implemented yet " << std::endl;
31  exit(1);
32 }
33 
34 #ifdef COCOA_VIS
35 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
37 {
38  ALIColour* col = new ALIColour( 0.5, 1., 0.5, 0. );
39  std::vector<ALIdouble> spar;
40  spar.push_back(1.);
41  spar.push_back(0.1);
42  CLHEP::HepRotation rm;
43  rm.rotateX( 90.*deg);
44  IgCocoaFileMgr::getInstance().addSolid( *this, "CYLINDER", spar, col, CLHEP::Hep3Vector(), rm);
45 }
46 #endif
47 
48 
49 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
51 {
52  ALIdouble go;
54  gomgr->getGlobalOptionValue("VisScale", go );
55 
56  theSolidShape = new CocoaSolidShapeTubs( "Tubs", go*0.*cm/m, go*5.*cm/m, go*1.*cm/m ); //COCOA internal units are meters
57 }
long double ALIdouble
Definition: CocoaGlobals.h:11
CocoaSolidShape * theSolidShape
void setRmGlobalOriginal(const CLHEP::HepRotation &rm)
static GlobalOptionMgr * getInstance()
int getGlobalOptionValue(const ALIstring &sstr, ALIdouble &val)
--— Search a string in theGlobalOptions and return 1 if found
OptOLens()
Definition: OptOLens.cc:21
string rm
Definition: submit.py:76
virtual void participateInMeasurement(LightRay &lightray, Measurement &meas, const ALIstring &behav)
Definition: OptOLens.cc:28
virtual void fillIguana()
Definition: OpticalObject.h:56
std::string ALIstring
Definition: CocoaGlobals.h:9
void constructSolidShape()
Definition: OptOLens.cc:50
void setRmGlobal(const CLHEP::HepRotation &rm)