Go to the documentation of this file.00001 #ifndef DDI_Ellipsoid_h
00002 #define DDI_Ellipsoid_h
00003
00004 #include <iosfwd>
00005 #include "Solid.h"
00006 #include <DataFormats/GeometryVector/interface/Pi.h>
00007
00008 namespace DDI {
00009
00010 class Ellipsoid : public Solid
00011 {
00012 public:
00013 Ellipsoid(double xSemiAxis,
00014 double ySemiAxis,
00015 double zSemiAxis,
00016 double zBottomCut=0,
00017 double zTopCut=0
00018 )
00019 : Solid(ddellipsoid)
00020 {
00021 p_.push_back(xSemiAxis);
00022 p_.push_back(ySemiAxis);
00023 p_.push_back(zSemiAxis);
00024 p_.push_back(zBottomCut);
00025 p_.push_back(zTopCut);
00026 }
00027 ~Ellipsoid() { }
00028
00030 double volume() const ;
00031 double halfVol (double dz, double maxz) const;
00032 void stream(std::ostream & os) const;
00033 };
00034
00035 }
00036 #endif // DDI_Ellipsoid_h