CMS 3D CMS Logo

/data/git/CMSSW_5_3_11_patch5/src/Alignment/CocoaModel/src/OptOLens.cc

Go to the documentation of this file.
00001 //   COCOA class implementation file
00002 //Id:  OptOLens.cc
00003 //CAT: Model
00004 //
00005 //   History: v1.0 
00006 //   Pedro Arce
00007 
00008 #include "Alignment/CocoaModel/interface/OptOLens.h"
00009 #include <iostream>
00010 #include <iomanip>
00011 #include <cstdlib>
00012 #include "CLHEP/Units/GlobalSystemOfUnits.h"
00013 #ifdef COCOA_VIS
00014 #include "Alignment/IgCocoaFileWriter/interface/IgCocoaFileMgr.h"
00015 #include "Alignment/CocoaVisMgr/interface/ALIColour.h"
00016 #endif
00017 #include "Alignment/CocoaDDLObjects/interface/CocoaSolidShapeTubs.h"
00018 #include "Alignment/CocoaUtilities/interface/GlobalOptionMgr.h"
00019 
00020 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
00021 OptOLens::OptOLens()
00022 { 
00023   setRmGlobalOriginal( CLHEP::HepRotation() ); 
00024   setRmGlobal( CLHEP::HepRotation() ); 
00025 }
00026 
00027 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
00028 void OptOLens::participateInMeasurement( LightRay& lightray, Measurement& meas, const ALIstring& behav )
00029 {
00030  std::cerr << "object not implemented yet " << std::endl;
00031  exit(1);      
00032 }
00033 
00034 #ifdef COCOA_VIS
00035 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
00036 void OptOLens::fillIguana()
00037 {
00038   ALIColour* col = new ALIColour( 0.5, 1., 0.5, 0. );
00039   std::vector<ALIdouble> spar;
00040   spar.push_back(1.);
00041   spar.push_back(0.1);
00042   CLHEP::HepRotation rm;
00043   rm.rotateX( 90.*deg);
00044   IgCocoaFileMgr::getInstance().addSolid( *this, "CYLINDER", spar, col, CLHEP::Hep3Vector(), rm);
00045 }
00046 #endif
00047 
00048 
00049 //@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
00050 void OptOLens::constructSolidShape()
00051 {
00052   ALIdouble go;
00053   GlobalOptionMgr* gomgr = GlobalOptionMgr::getInstance();
00054   gomgr->getGlobalOptionValue("VisScale", go );
00055 
00056   theSolidShape = new CocoaSolidShapeTubs( "Tubs", go*0.*cm/m, go*5.*cm/m, go*1.*cm/m ); //COCOA internal units are meters
00057 }