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
TangentPlane Class Reference

#include <TangentPlane.h>

Inheritance diagram for TangentPlane:
Plane Surface GloballyPositioned< float > BasicReferenceCounted

Public Member Functions

const SurfaceparentSurface ()
 access to original surface More...
 
 TangentPlane (const PositionType &pos, const RotationType &rot, const Surface *parent)
 
- Public Member Functions inherited from Plane
float localZ (const GlobalPoint &gp) const
 Fast access to distance from plane for a point. More...
 
float localZ (const GlobalVector &gv) const
 Fast access to component perpendicular to plane for a vector. More...
 
GlobalVector normalVector () const
 
 Plane (const PositionType &pos, const RotationType &rot)
 
 Plane (const PositionType &pos, const RotationType &rot, MediumProperties *mp)
 
virtual SurfaceOrientation::Side side (const LocalPoint &p, Scalar toler) const
 
virtual SurfaceOrientation::Side side (const GlobalPoint &p, Scalar toler) const
 
virtual
ReferenceCountingPointer
< TangentPlane
tangentPlane (const GlobalPoint &) const
 tangent plane to surface from global point More...
 
virtual
ReferenceCountingPointer
< TangentPlane
tangentPlane (const LocalPoint &) const
 tangent plane to surface from local point More...
 
- Public Member Functions inherited from Surface
const MediumPropertiesmediumProperties () const
 
void setMediumProperties (const MediumProperties &mp)
 
void setMediumProperties (MediumProperties *mp)
 
 Surface (const PositionType &pos, const RotationType &rot)
 
 Surface (const PositionType &pos, const RotationType &rot, MediumProperties *mp)
 
 Surface (const PositionType &pos, const RotationType &rot, MediumProperties mp)
 
 Surface (const Surface &iSurface)
 
GlobalPoint toGlobal (const Point2DBase< Scalar, LocalTag > lp) const
 
virtual ~Surface ()=0
 
- Public Member Functions inherited from GloballyPositioned< float >
float eta () const
 
 GloballyPositioned (const PositionType &pos, const RotationType &rot)
 
void move (const GlobalVector &displacement)
 
float 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 ()
 
- Public Member Functions inherited from BasicReferenceCounted
void addReference () const
 
 BasicReferenceCounted ()
 
 BasicReferenceCounted (const BasicReferenceCounted &iRHS)
 
const BasicReferenceCountedoperator= (const BasicReferenceCounted &)
 
unsigned int references () const
 
void removeReference () const
 
virtual ~BasicReferenceCounted ()
 

Private Attributes

ConstReferenceCountingPointer
< Surface
theParent
 

Additional Inherited Members

- Public Types inherited from Plane
typedef
ConstReferenceCountingPointer
< Plane
ConstPlanePointer
 
typedef
ReferenceCountingPointer
< Plane
PlanePointer
 
- Public Types inherited from Surface
typedef GloballyPositioned< float > Base
 
typedef SurfaceOrientation::Side Side
 
- Public Types inherited from GloballyPositioned< float >
typedef Point3DBase< float,
GlobalTag
GlobalPoint
 
typedef Vector3DBase< float,
GlobalTag
GlobalVector
 
typedef Point3DBase< float,
LocalTag
LocalPoint
 
typedef Vector3DBase< float,
LocalTag
LocalVector
 
typedef Point3DBase< float,
GlobalTag
PositionType
 
typedef TkRotation< float > RotationType
 
typedef float Scalar
 
- Static Public Member Functions inherited from Plane
static PlanePointer build (const PositionType &pos, const RotationType &rot, MediumProperties *mp=0)
 
- Static Public Member Functions inherited from GloballyPositioned< float >
static float iniEta ()
 
static float iniPhi ()
 

Detailed Description

Plane tangent to a more general surface (e.g. cylinder). To be constructed by the "parent" surface.

Definition at line 10 of file TangentPlane.h.

Constructor & Destructor Documentation

TangentPlane::TangentPlane ( const PositionType pos,
const RotationType rot,
const Surface parent 
)
inline

Definition at line 12 of file TangentPlane.h.

14  :
15  Surface(pos,rot), Plane(pos,rot),
16  theParent(parent) {}
Plane(const PositionType &pos, const RotationType &rot)
Definition: Plane.h:36
ConstReferenceCountingPointer< Surface > theParent
Definition: TangentPlane.h:22
Surface(const PositionType &pos, const RotationType &rot)
Definition: Surface.h:40

Member Function Documentation

const Surface& TangentPlane::parentSurface ( )
inline

access to original surface

Definition at line 19 of file TangentPlane.h.

References theParent.

19 {return *theParent;}
ConstReferenceCountingPointer< Surface > theParent
Definition: TangentPlane.h:22

Member Data Documentation

ConstReferenceCountingPointer<Surface> TangentPlane::theParent
private

Definition at line 22 of file TangentPlane.h.

Referenced by parentSurface().