#include "hgeomvector.h"

HGeomVector


class description - source file - inheritance tree (.pdf)

class HGeomVector : public TObject

Inheritance Chart:
TObject
<-
HGeomVector
<-
HGeomVector2
HMdcPointOnPlane
HRtMetaPoint

    protected:
void round(Double_t d, Int_t n) public:
HGeomVector(Double_t dx = 0, Double_t dy = 0, Double_t dz = 0) HGeomVector(const HGeomVector& v) HGeomVector operator-() const HGeomVector operator+(const HGeomVector& v) const HGeomVector operator-(const HGeomVector& v) const HGeomVector vectorProduct(const HGeomVector& v) const ~HGeomVector() HGeomVector& abs() static TClass* Class() void clear() Double_t getX() const Double_t getY() const Double_t getZ() const virtual TClass* IsA() const Double_t length() const Bool_t operator!=(const HGeomVector& v) const Double_t operator()(const Int_t i) const HGeomVector& operator*=(const Double_t a) HGeomVector& operator+=(const Double_t a) HGeomVector& operator+=(const HGeomVector& v) HGeomVector& operator-=(const Double_t a) HGeomVector& operator-=(const HGeomVector& v) HGeomVector& operator/=(const Double_t a) Bool_t operator<(const Double_t a) Bool_t operator<=(const Double_t a) HGeomVector& operator=(const HGeomVector& v) Bool_t operator==(const HGeomVector& v) const Bool_t operator>(const Double_t a) Bool_t operator>=(const Double_t a) void print() const void round(Int_t n) Double_t scalarProduct(const HGeomVector& v) const void setVector(const Double_t* a) void setVector(const Float_t* a) void setX(const Double_t a) void setXYZ(const Double_t xx, const Double_t yy, const Double_t zz) void setY(const Double_t a) void setZ(const Double_t a) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) Double_t& X() Double_t& Y() Double_t& Z()

Data Members


    protected:
Double_t x Double_t y Double_t z

Class Description


 HGeomVector

 This class defines a vector with 3 Double_t components.
 Instantiations of this class are e.g geometry points and
 translation vectors in the geometry transformations.

 All functions and operators are defined inline.

 Constructors:
   HGeomVector(Double_t dx=0,Double_t dy=0,Double_t dz=0)
   HGeomVector(const HGeomVector& v)

 Access to the components:
   void setVector(const Double_t* a);
   void setX(const Double_t a)
   void setY(const Double_t a)
   void setZ(const Double_t a)
   Double_t getX() const
   Double_t getY() const
   Double_t getZ() const
   Double_t operator() (const Int_t i) const;

 Check for the size of all components:
   Bool_t operator < (const Double_t a)
   Bool_t operator <= (const Double_t a)
   Bool_t operator > (const Double_t a)
   Bool_t operator >= (const Double_t a)

 Check for equality/inequality;
   Bool_t operator == (const HGeomVector& v) const
   Bool_t operator != (const HGeomVector& v) const

 Addition/Substraction of a vector;
   HGeomVector& operator += (const Double_t a)
   HGeomVector& operator -= (const Double_t a)

 Addition/Substraction of two vectors;
   HGeomVector operator + (const HGeomVector& v) const
   HGeomVector operator - (const HGeomVector& v) const

 Multiplication/Division of each components with/by a factor
   HGeomVector& operator *= (const Double_t a)
   HGeomVector& operator /= (const Double_t a)


 HGeomVector operator - () const
      changes the sign of all components

 HGeomVector& operator = (const HGeomVector& v)
      assignment

 HGeomVector& abs()
      builds absolute value of each components

 Double_t scalarProduct(const HGeomVector& v) const;
      returns the scalar product

 HGeomVector vectorProduct(const HGeomVector& v) const;
      returns the vector product

 Double_t length() const {return sqrt(x*x+y*y+z*z);}
      returns the length

  void clear()
      sets all components to 0.0

 void print()
      prints the components

 void round(Int_t n)
      rounds all components to a precision with n digits

 friend ostream& operator << (ostream& put,const HGeomVector& v);
      output to stream

 friend istream& operator >> (istream& get,HGeomVector& v);
      input from stream





Inline Functions


                void ~HGeomVector()
                void round(Double_t d, Int_t n)
         HGeomVector HGeomVector(Double_t dx = 0, Double_t dy = 0, Double_t dz = 0)
         HGeomVector HGeomVector(const HGeomVector& v)
           Double_t& X()
           Double_t& Y()
           Double_t& Z()
            Double_t getX() const
            Double_t getY() const
            Double_t getZ() const
                void setXYZ(const Double_t xx, const Double_t yy, const Double_t zz)
                void setX(const Double_t a)
                void setY(const Double_t a)
                void setZ(const Double_t a)
                void setVector(const Double_t* a)
                void setVector(const Float_t* a)
            Double_t operator()(const Int_t i) const
         HGeomVector operator-() const
        HGeomVector& operator=(const HGeomVector& v)
              Bool_t operator==(const HGeomVector& v) const
              Bool_t operator!=(const HGeomVector& v) const
              Bool_t operator<(const Double_t a)
              Bool_t operator<=(const Double_t a)
              Bool_t operator>(const Double_t a)
              Bool_t operator>=(const Double_t a)
        HGeomVector& operator+=(const Double_t a)
        HGeomVector& operator-=(const Double_t a)
        HGeomVector& operator*=(const Double_t a)
        HGeomVector& operator/=(const Double_t a)
        HGeomVector& operator+=(const HGeomVector& v)
        HGeomVector& operator-=(const HGeomVector& v)
         HGeomVector operator+(const HGeomVector& v) const
         HGeomVector operator-(const HGeomVector& v) const
        HGeomVector& abs()
            Double_t scalarProduct(const HGeomVector& v) const
         HGeomVector vectorProduct(const HGeomVector& v) const
            Double_t length() const
                void clear()
                void print() const
                void round(Int_t n)
             TClass* Class()
             TClass* IsA() const
                void ShowMembers(TMemberInspector& insp, char* parent)
                void Streamer(TBuffer& b)
                void StreamerNVirtual(TBuffer& b)


Last update: 16/06/99


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.