CLHEP VERSION Reference Documentation
   
CLHEP Home Page     CLHEP Documentation     CLHEP Bug Reports

Public Member Functions | Protected Attributes | Related Functions | List of all members
HepGeom::Plane3D< T > Class Template Reference

#include <Plane3D.h>

Public Member Functions

 Plane3D ()
 
 Plane3D (T a1, T b1, T c1, T d1)
 
 Plane3D (const Normal3D< T > &n, const Point3D< T > &p)
 
 Plane3D (const Point3D< T > &p1, const Point3D< T > &p2, const Point3D< T > &p3)
 
 Plane3D (const Plane3D< float > &p)
 
 ~Plane3D ()
 
Plane3D< T > & operator= (const Plane3D< T > &p)
 
a () const
 
b () const
 
c () const
 
d () const
 
Normal3D< T > normal () const
 
Plane3D< T > & normalize ()
 
distance (const Point3D< T > &p) const
 
Point3D< T > point (const Point3D< T > &p) const
 
Point3D< T > point () const
 
bool operator== (const Plane3D< T > &p) const
 
bool operator!= (const Plane3D< T > &p) const
 
Plane3D< T > & transform (const Transform3D &m)
 
 Plane3D ()
 
 Plane3D (T a1, T b1, T c1, T d1)
 
 Plane3D (const Normal3D< T > &n, const Point3D< T > &p)
 
 Plane3D (const Point3D< T > &p1, const Point3D< T > &p2, const Point3D< T > &p3)
 
 Plane3D (const Plane3D< float > &p)
 
 ~Plane3D ()
 
Plane3D< T > & operator= (const Plane3D< T > &p)
 
a () const
 
b () const
 
c () const
 
d () const
 
Normal3D< T > normal () const
 
Plane3D< T > & normalize ()
 
distance (const Point3D< T > &p) const
 
Point3D< T > point (const Point3D< T > &p) const
 
Point3D< T > point () const
 
bool operator== (const Plane3D< T > &p) const
 
bool operator!= (const Plane3D< T > &p) const
 
Plane3D< T > & transform (const Transform3D &m)
 

Protected Attributes

a_
 
b_
 
c_
 
d_
 

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &os, const Plane3D< float > &p)
 
std::ostream & operator<< (std::ostream &os, const Plane3D< double > &p)
 
std::ostream & operator<< (std::ostream &os, const Plane3D< float > &p)
 
std::ostream & operator<< (std::ostream &os, const Plane3D< double > &p)
 

Detailed Description

template<class T>
class HepGeom::Plane3D< T >

Template class for geometrical plane in 3D.

Author
Evgeni Chernyaev Evgue.nosp@m.ni.T.nosp@m.chern.nosp@m.iaev.nosp@m.@cern.nosp@m..ch

Definition at line 30 of file CLHEP/Geometry/Plane3D.h.

Constructor & Destructor Documentation

◆ Plane3D() [1/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( )
inline

Default constructor - creates plane z=0.

Definition at line 37 of file CLHEP/Geometry/Plane3D.h.

◆ Plane3D() [2/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( a1,
b1,
c1,
d1 
)
inline

Constructor from four numbers - creates plane a*x+b*y+c*z+d=0.

Definition at line 41 of file CLHEP/Geometry/Plane3D.h.

◆ Plane3D() [3/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Normal3D< T > &  n,
const Point3D< T > &  p 
)
inline

Constructor from normal and point.

Definition at line 45 of file CLHEP/Geometry/Plane3D.h.

◆ Plane3D() [4/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Point3D< T > &  p1,
const Point3D< T > &  p2,
const Point3D< T > &  p3 
)
inline

◆ Plane3D() [5/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Plane3D< float > &  p)
inline

Copy constructor. Plane3D<double> has two constructors: from Plane3D<double> (provided by compiler) and from Plane3D<float> (defined in this file). Plane3D<float> has only the last one.

Definition at line 63 of file CLHEP/Geometry/Plane3D.h.

◆ ~Plane3D() [1/2]

template<class T >
HepGeom::Plane3D< T >::~Plane3D ( )
inline

Destructor.

Definition at line 68 of file CLHEP/Geometry/Plane3D.h.

◆ Plane3D() [6/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( )
inline

Default constructor - creates plane z=0.

Definition at line 37 of file Geometry/Plane3D.h.

◆ Plane3D() [7/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( a1,
b1,
c1,
d1 
)
inline

Constructor from four numbers - creates plane a*x+b*y+c*z+d=0.

Definition at line 41 of file Geometry/Plane3D.h.

◆ Plane3D() [8/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Normal3D< T > &  n,
const Point3D< T > &  p 
)
inline

Constructor from normal and point.

Definition at line 45 of file Geometry/Plane3D.h.

◆ Plane3D() [9/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Point3D< T > &  p1,
const Point3D< T > &  p2,
const Point3D< T > &  p3 
)
inline

◆ Plane3D() [10/10]

template<class T >
HepGeom::Plane3D< T >::Plane3D ( const Plane3D< float > &  p)
inline

Copy constructor. Plane3D<double> has two constructors: from Plane3D<double> (provided by compiler) and from Plane3D<float> (defined in this file). Plane3D<float> has only the last one.

Definition at line 63 of file Geometry/Plane3D.h.

◆ ~Plane3D() [2/2]

template<class T >
HepGeom::Plane3D< T >::~Plane3D ( )
inline

Destructor.

Definition at line 68 of file Geometry/Plane3D.h.

Member Function Documentation

◆ a() [1/2]

template<class T >
T HepGeom::Plane3D< T >::a ( ) const
inline

◆ a() [2/2]

template<class T >
T HepGeom::Plane3D< T >::a ( ) const
inline

Returns the a-coefficient in the plane equation: a*x+b*y+c*z+d=0.

Definition at line 78 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::a_.

◆ b() [1/2]

template<class T >
T HepGeom::Plane3D< T >::b ( ) const
inline

◆ b() [2/2]

template<class T >
T HepGeom::Plane3D< T >::b ( ) const
inline

Returns the b-coefficient in the plane equation: a*x+b*y+c*z+d=0.

Definition at line 81 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::b_.

◆ c() [1/2]

template<class T >
T HepGeom::Plane3D< T >::c ( ) const
inline

◆ c() [2/2]

template<class T >
T HepGeom::Plane3D< T >::c ( ) const
inline

Returns the c-coefficient in the plane equation: a*x+b*y+c*z+d=0.

Definition at line 84 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::c_.

◆ d() [1/2]

template<class T >
T HepGeom::Plane3D< T >::d ( ) const
inline

◆ d() [2/2]

template<class T >
T HepGeom::Plane3D< T >::d ( ) const
inline

Returns the free member of the plane equation: a*x+b*y+c*z+d=0.

Definition at line 87 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::d_.

◆ distance() [1/2]

template<class T >
T HepGeom::Plane3D< T >::distance ( const Point3D< T > &  p) const
inline

◆ distance() [2/2]

template<class T >
T HepGeom::Plane3D< T >::distance ( const Point3D< T > &  p) const
inline

◆ normal() [1/2]

template<class T >
Normal3D< T > HepGeom::Plane3D< T >::normal ( ) const
inline

Returns normal.

Definition at line 91 of file CLHEP/Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::a_, HepGeom::Plane3D< T >::b_, and HepGeom::Plane3D< T >::c_.

◆ normal() [2/2]

template<class T >
Normal3D< T > HepGeom::Plane3D< T >::normal ( ) const
inline

Returns normal.

Definition at line 91 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::a_, HepGeom::Plane3D< T >::b_, and HepGeom::Plane3D< T >::c_.

◆ normalize() [1/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::normalize ( )
inline

◆ normalize() [2/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::normalize ( )
inline

◆ operator!=() [1/2]

template<class T >
bool HepGeom::Plane3D< T >::operator!= ( const Plane3D< T > &  p) const
inline

◆ operator!=() [2/2]

template<class T >
bool HepGeom::Plane3D< T >::operator!= ( const Plane3D< T > &  p) const
inline

◆ operator=() [1/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::operator= ( const Plane3D< T > &  p)
inline

◆ operator=() [2/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::operator= ( const Plane3D< T > &  p)
inline

◆ operator==() [1/2]

template<class T >
bool HepGeom::Plane3D< T >::operator== ( const Plane3D< T > &  p) const
inline

◆ operator==() [2/2]

template<class T >
bool HepGeom::Plane3D< T >::operator== ( const Plane3D< T > &  p) const
inline

◆ point() [1/4]

template<class T >
Point3D< T > HepGeom::Plane3D< T >::point ( ) const
inline

Returns projection of the origin to the plane.

Definition at line 116 of file CLHEP/Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::a(), HepGeom::Plane3D< T >::b(), HepGeom::Plane3D< T >::c(), and HepGeom::Plane3D< T >::d().

◆ point() [2/4]

template<class T >
Point3D< T > HepGeom::Plane3D< T >::point ( ) const
inline

Returns projection of the origin to the plane.

Definition at line 116 of file Geometry/Plane3D.h.

References HepGeom::Plane3D< T >::a(), HepGeom::Plane3D< T >::b(), HepGeom::Plane3D< T >::c(), and HepGeom::Plane3D< T >::d().

◆ point() [3/4]

template<class T >
Point3D< T > HepGeom::Plane3D< T >::point ( const Point3D< T > &  p) const
inline

◆ point() [4/4]

template<class T >
Point3D< T > HepGeom::Plane3D< T >::point ( const Point3D< T > &  p) const
inline

◆ transform() [1/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::transform ( const Transform3D m)
inline

Transformation by Transform3D.

Definition at line 135 of file CLHEP/Geometry/Plane3D.h.

◆ transform() [2/2]

template<class T >
Plane3D< T > & HepGeom::Plane3D< T >::transform ( const Transform3D m)
inline

Transformation by Transform3D.

Definition at line 135 of file Geometry/Plane3D.h.

Friends And Related Function Documentation

◆ operator<<() [1/4]

template<class T >
std::ostream & operator<< ( std::ostream &  os,
const Plane3D< double > &  p 
)
related

◆ operator<<() [2/4]

template<class T >
std::ostream & operator<< ( std::ostream &  os,
const Plane3D< double > &  p 
)
related

Output to the stream.

Definition at line 29 of file Plane3D.cc.

◆ operator<<() [3/4]

template<class T >
std::ostream & operator<< ( std::ostream &  os,
const Plane3D< float > &  p 
)
related

◆ operator<<() [4/4]

template<class T >
std::ostream & operator<< ( std::ostream &  os,
const Plane3D< float > &  p 
)
related

Output to the stream.

Definition at line 22 of file Plane3D.cc.

Member Data Documentation

◆ a_

template<class T >
T HepGeom::Plane3D< T >::a_
protected

◆ b_

template<class T >
T HepGeom::Plane3D< T >::b_
protected

◆ c_

template<class T >
T HepGeom::Plane3D< T >::c_
protected

◆ d_

template<class T >
T HepGeom::Plane3D< T >::d_
protected

The documentation for this class was generated from the following files: