CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
AlignableSurface Class Reference

#include <AlignableSurface.h>

Inheritance diagram for AlignableSurface:
GloballyPositioned< align::Scalar >

Public Member Functions

 AlignableSurface (const BoundPlane &surface)
 Constructor to set surface from geometry. More...
 
 AlignableSurface (const align::PositionType &=PositionType(), const align::RotationType &=RotationType())
 Constructor to set position and rotation; width and length default to 0. More...
 
align::Scalar length () const
 
void setLength (align::Scalar length)
 
void setWidth (align::Scalar width)
 
align::GlobalPoints toGlobal (const align::LocalPoints &) const
 Return in global coord given a set of local points. More...
 
align::RotationType toGlobal (const align::RotationType &) const
 Return in global frame a rotation given in local frame. More...
 
align::EulerAngles toGlobal (const align::EulerAngles &) const
 Return in global coord given Euler angles in local coord. More...
 
align::RotationType toLocal (const align::RotationType &) const
 Return in local frame a rotation given in global frame. More...
 
align::EulerAngles toLocal (const align::EulerAngles &) const
 Return in local coord given Euler angles in global coord. More...
 
align::Scalar width () const
 
- Public Member Functions inherited from GloballyPositioned< align::Scalar >
align::Scalar eta () const
 
 GloballyPositioned (const PositionType &pos, const RotationType &rot)
 
void move (const GlobalVector &displacement)
 
align::Scalar phi () const
 
const PositionTypeposition () const
 
void rotate (const RotationType &rotation)
 
const RotationTyperotation () const
 
GlobalPoint toGlobal (const LocalPoint &lp) const
 
Point3DBase< U, GlobalTagtoGlobal (const Point3DBase< U, LocalTag > &lp) const
 
GlobalVector toGlobal (const LocalVector &lv) const
 
Vector3DBase< U, GlobalTagtoGlobal (const Vector3DBase< U, LocalTag > &lv) const
 
LocalPoint toLocal (const GlobalPoint &gp) const
 
Point3DBase< U, LocalTagtoLocal (const Point3DBase< U, GlobalTag > &gp) const
 
LocalVector toLocal (const GlobalVector &gv) const
 
Vector3DBase< U, LocalTagtoLocal (const Vector3DBase< U, GlobalTag > &gv) const
 
virtual ~GloballyPositioned ()
 

Private Attributes

align::Scalar theLength
 
align::Scalar theWidth
 

Additional Inherited Members

- Public Types inherited from GloballyPositioned< align::Scalar >
typedef Point3DBase
< align::Scalar, GlobalTag
GlobalPoint
 
typedef Vector3DBase
< align::Scalar, GlobalTag
GlobalVector
 
typedef Point3DBase
< align::Scalar, LocalTag
LocalPoint
 
typedef Vector3DBase
< align::Scalar, LocalTag
LocalVector
 
typedef Point3DBase
< align::Scalar, GlobalTag
PositionType
 
typedef TkRotation< align::ScalarRotationType
 
typedef align::Scalar Scalar
 
- Static Public Member Functions inherited from GloballyPositioned< align::Scalar >
static align::Scalar iniEta ()
 
static align::Scalar iniPhi ()
 

Detailed Description

A class to hold a surface with width and length for alignment purposes.

Date:
2007/04/25 18:37:59
Revision:
1.8
Author
Chung Khim Lae

Definition at line 20 of file AlignableSurface.h.

Constructor & Destructor Documentation

AlignableSurface::AlignableSurface ( const BoundPlane surface)

Constructor to set surface from geometry.

Definition at line 7 of file AlignableSurface.cc.

7  :
8  GloballyPositioned<Scalar>( surface.position(), surface.rotation() ),
9  theWidth( surface.bounds().width() ),
10  theLength( surface.bounds().length() )
11 {
12 }
virtual float length() const =0
align::Scalar theWidth
const Bounds & bounds() const
Definition: BoundSurface.h:89
const RotationType & rotation() const
align::Scalar theLength
virtual float width() const =0
const PositionType & position() const
AlignableSurface::AlignableSurface ( const align::PositionType = PositionType(),
const align::RotationType = RotationType() 
)

Constructor to set position and rotation; width and length default to 0.

Member Function Documentation

align::Scalar AlignableSurface::length ( ) const
inline
void AlignableSurface::setLength ( align::Scalar  length)
inline
void AlignableSurface::setWidth ( align::Scalar  width)
inline
GlobalPoints AlignableSurface::toGlobal ( const align::LocalPoints localPoints) const

Return in global coord given a set of local points.

Definition at line 22 of file AlignableSurface.cc.

References j.

Referenced by AlignableDet::addAlignmentPositionErrorFromRotation(), AlignableDetUnit::addAlignmentPositionErrorFromRotation(), MillePedeAlignmentAlgorithm::addPxbSurvey(), SurveyInputTrackerFromDB::addSurveyInfo(), SurveyInputCSCfromPins::analyze(), MuonGeometrySVGTemplate::analyze(), BeamSpotAlignmentParameters::apply(), RigidBodyAlignmentParameters::apply(), BowedSurfaceAlignmentParameters::apply(), TwoBowedSurfacesAlignmentParameters::apply(), CSCAlignmentCorrections::applyAlignment(), KalmanAlignmentAlgorithm::applyAlignmentParameters(), SurveyResidual::calculate(), align::createPoints(), MuonAlignmentInputXML::do_movelocal(), MuonAlignmentInputXML::do_rotatebeamline(), MuonAlignmentInputXML::do_rotateglobalaxis(), AlignableBeamSpot::dump(), MuonChamberResidual::global_stubpos(), MuonChamberResidual::global_trackpos(), BeamSpotAlignmentParameters::globalParameters(), RigidBodyAlignmentParameters::globalParameters(), SurveyDet::globalPoints(), KalmanAlignmentUserVariables::histogramParameters(), ParametersToParametersDerivatives::init2BowedRigid(), AlignableModifier::moveAlignableLocal(), AlignmentMonitorSegmentDifferences::processMuonResidualsFromTrack(), CreateSurveyRcds::setGeometry(), SurveyAlignment::shiftSensors(), AlignmentProducer::simpleMisalignment_(), toGlobal(), and KalmanAlignmentUserVariables::update().

23 {
24  GlobalPoints globalPoints;
25 
26  unsigned int nPoint = localPoints.size();
27 
28  globalPoints.reserve(nPoint);
29 
30  for (unsigned int j = 0; j < nPoint; ++j)
31  {
32  globalPoints.push_back( toGlobal(localPoints[j]) );
33  }
34 
35  return globalPoints;
36 }
std::vector< GlobalPoint > GlobalPoints
Definition: Utilities.h:23
int j
Definition: DBlmapReader.cc:9
align::GlobalPoints toGlobal(const align::LocalPoints &) const
Return in global coord given a set of local points.
align::RotationType AlignableSurface::toGlobal ( const align::RotationType ) const

Return in global frame a rotation given in local frame.

EulerAngles AlignableSurface::toGlobal ( const align::EulerAngles angles) const

Return in global coord given Euler angles in local coord.

Definition at line 43 of file AlignableSurface.cc.

References align::toAngles(), toGlobal(), and align::toMatrix().

44 {
45  return toAngles( toGlobal( toMatrix(angles) ) );
46 }
EulerAngles toAngles(const RotationType &)
Convert rotation matrix to angles about x-, y-, z-axes (frame rotation).
Definition: Utilities.cc:7
align::GlobalPoints toGlobal(const align::LocalPoints &) const
Return in global coord given a set of local points.
RotationType toMatrix(const EulerAngles &)
Convert rotation angles about x-, y-, z-axes to matrix.
Definition: Utilities.cc:40
align::RotationType AlignableSurface::toLocal ( const align::RotationType ) const
EulerAngles AlignableSurface::toLocal ( const align::EulerAngles angles) const

Return in local coord given Euler angles in global coord.

Definition at line 53 of file AlignableSurface.cc.

References align::toAngles(), toLocal(), and align::toMatrix().

54 {
55  return toAngles( toLocal( toMatrix(angles) ) );
56 }
align::RotationType toLocal(const align::RotationType &) const
Return in local frame a rotation given in global frame.
EulerAngles toAngles(const RotationType &)
Convert rotation matrix to angles about x-, y-, z-axes (frame rotation).
Definition: Utilities.cc:7
RotationType toMatrix(const EulerAngles &)
Convert rotation angles about x-, y-, z-axes to matrix.
Definition: Utilities.cc:40
align::Scalar AlignableSurface::width ( ) const
inline

Definition at line 36 of file AlignableSurface.h.

References theWidth.

Referenced by Vispa.Main.MainWindow.MainWindow::_saveIni(), TrackerGeometryCompare::addSurveyInfo(), MuonAlignmentInputSurveyDB::addSurveyInfo_(), AlignmentProducer::addSurveyInfo_(), MuonGeometrySVGTemplate::analyze(), TwoBowedSurfacesAlignmentParameters::apply(), Vispa.Gui.VispaWidget.VispaWidget::autosize(), Vispa.Gui.VispaWidget.VispaWidget::boundingRect(), Vispa.Gui.VispaWidget.VispaWidget::contentRect(), Vispa.Gui.VispaWidget.VispaWidget::defineArrowBackgroundShape(), Vispa.Gui.VispaWidget.VispaWidget::defineCircleBackgroundShape(), Vispa.Gui.VispaWidget.VispaWidget::defineRoundRectBackgroundShape(), BowedSurfaceAlignmentParameters::derivatives(), TwoBowedSurfacesAlignmentParameters::derivatives(), Vispa.Gui.VispaWidget.VispaWidget::drawHeaderBackground(), Vispa.Gui.ConnectableWidget.ConnectableWidget::drawPortNames(), MuonGeometryArrange::fillTree(), TrackerGeometryCompare::fillTree(), Vispa.Gui.VispaWidget.VispaWidget::imageRectF(), ParametersToParametersDerivatives::init2BowedRigid(), ParametersToParametersDerivatives::initBowedRigid(), MuonResiduals5DOFFitter::plot(), MuonResiduals6DOFFitter::plot(), MuonResiduals6DOFrphiFitter::plot(), Vispa.Gui.ConnectableWidget.ConnectableWidget::positionizeMenuWidget(), Vispa.Views.PropertyView.PropertyView::resizeEvent(), BowedSurfaceAlignmentParameters::rotation(), Vispa.Views.PropertyView.PropertyView::sectionResized(), setWidth(), Vispa.Gui.VispaWidget.VispaWidget::setZoom(), SurveyDet::SurveyDet(), and Vispa.Main.MainWindow.MainWindow::updateStartupScreenGeometry().

36 { return theWidth; }
align::Scalar theWidth

Member Data Documentation

align::Scalar AlignableSurface::theLength
private

Definition at line 75 of file AlignableSurface.h.

Referenced by length(), and setLength().

align::Scalar AlignableSurface::theWidth
private

Definition at line 74 of file AlignableSurface.h.

Referenced by setWidth(), and width().