8#ifndef EMC_REC_ENDCAP_GEO_H
9#define EMC_REC_ENDCAP_GEO_H
14#include "CLHEP/Geometry/Point3D.h"
15#include "CLHEP/Geometry/Plane3D.h"
16#include "CLHEP/Geometry/Normal3D.h"
17#include "CLHEP/Matrix/Matrix.h"
18#include "CLHEP/Matrix/Vector.h"
20#ifndef ENABLE_BACKWARDS_COMPATIBILITY
23#ifndef ENABLE_BACKWARDS_COMPATIBILITY
27#ifndef ENABLE_BACKWARDS_COMPATIBILITY
50 void ParameterInitialize();
52 void CalculateStandardSector1();
54 void CalculateStandardSector2();
56 void FillCCenterVector();
112 vector <HepPoint3D> fCCenter;
113 vector <HepPoint3D> fCFrontCenter;
128 a_=a; b_=b; c_=c; d_=d;
return; }
132 a_=
n.x(); b_=
n.y(); c_=
n.z(); d_=-
n*p;
return; }
138 a_ =
n.x(); b_ =
n.y(); c_ =
n.z(); d_ = -
n*p1;
144 a_ = plane.a_; b_ = plane.b_; c_ = plane.c_; d_ = plane.d_;
150 void Build(
double a=0,
double b=0,
double c=0,
double d=0) {
151 a_=a; b_=b; c_=c; d_=d;
return; }
154 a_=
n.x(); b_=
n.y(); c_=
n.z(); d_=-
n*p;
return; }
158 a_ =
n.x(); b_ =
n.y(); c_ =
n.z(); d_ = -
n*p1;
HepGeom::Point3D< double > HepPoint3D
HepGeom::Normal3D< double > HepNormal3D
HepGeom::Plane3D< double > HepPlane3D
EvtVector3R cross(const EvtVector3R &p1, const EvtVector3R &p2)
EmcRecCrystal GetCrystal(const Identifier &id) const
HepPoint3D GetCCenter(const Identifier &id) const
HepPoint3D GetCFrontCenter(const Identifier &id) const
void Build(double a=0, double b=0, double c=0, double d=0)
EmcRecGeoPlane & operator=(const EmcRecGeoPlane &plane)
Assignment
void Build(const HepPoint3D &p1, const HepPoint3D &p2, const HepPoint3D &p3)
EmcRecGeoPlane(double a=0, double b=0, double c=0, double d=0)
EmcRecGeoPlane(const HepPoint3D &p1, const HepPoint3D &p2, const HepPoint3D &p3)
Constructor from three points.
void Build(const HepPoint3D &n, const HepPoint3D &p)
EmcRecGeoPlane(const HepPoint3D &n, const HepPoint3D &p)
Constructor from normal and point.