Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

GeomObject Class Reference

Pure base class for all Geometric objects. Establishes the ability to transform. More...

#include <GeomObject.h>

Inheritance diagram for GeomObject:

CoordSystem Point Ray Shape Surface Track Vector Digitizer Helix Volume Conic Cylinder Hyperbolic Plane Sphere Wedge List of all members.

Public Methods

virtual ~GeomObject ()
virtual GeomObject& transform (const CoordTransform&) = 0
 virtual method to perform transformations that must be implemented by subclasses.

GeomObject& move (const Vector&)
 gives subclasses ability to just move. More...

GeomObject& moveX (double)
GeomObject& moveY (double)
GeomObject& moveZ (double)
GeomObject& rotateX (double)
 Rotation around the given axis: return pointer to self for convenience. More...

GeomObject& rotateY (double)
GeomObject& rotateZ (double)
GeomObject& rotate (double angle, const Vector & axis)
 Rotation around a specified vector. More...

virtual const char* nameOf () const
 makes name available to subclasses using the type info facility. More...

virtual void printOn (std::ostream& out=std::cout) const
 print info about this object. More...


Protected Methods

 GeomObject ()

Detailed Description

Pure base class for all Geometric objects. Establishes the ability to transform.

Definition at line 20 of file GeomObject.h.


Constructor & Destructor Documentation

GeomObject::~GeomObject ( ) [inline, virtual]
 

Definition at line 23 of file GeomObject.h.

GeomObject::GeomObject ( ) [inline, protected]
 

Definition at line 54 of file GeomObject.h.


Member Function Documentation

GeomObject & GeomObject::move ( const Vector & v )
 

gives subclasses ability to just move.

Definition at line 17 of file GeomObject.cxx.

Referenced by moveX(), moveY(), and moveZ().

GeomObject & GeomObject::moveX ( double s )
 

Definition at line 21 of file GeomObject.cxx.

GeomObject & GeomObject::moveY ( double s )
 

Definition at line 22 of file GeomObject.cxx.

GeomObject & GeomObject::moveZ ( double s )
 

Definition at line 23 of file GeomObject.cxx.

const char * GeomObject::nameOf ( ) const [virtual]
 

makes name available to subclasses using the type info facility.

Reimplemented in Cone, Conic, Cons, Cylinder, Helix, Hype, Hyperbolic, Plane, Point, Ray, Sphe, Sphere, Track, Trap, Trd1, Trd2, Tube, Tubs, Vector, and Wedge.

Definition at line 10 of file GeomObject.cxx.

void GeomObject::printOn ( std::ostream & os = std::cout ) const [virtual]
 

print info about this object.

Reimplemented in Cone, Conic, Cons, Cylinder, Helix, Hype, Hyperbolic, Plane, Point, Ray, Shape, Sphe, Sphere, Track, Trap, Trd1, Trd2, Tube, Tubs, Vector, and Volume.

Definition at line 53 of file GeomObject.cxx.

Referenced by operator<<().

GeomObject & GeomObject::rotate ( double a,
const Vector & dir )
 

Rotation around a specified vector.

Reimplemented in Vector.

Definition at line 48 of file GeomObject.cxx.

Referenced by Vector::rotate().

GeomObject & GeomObject::rotateX ( double a )
 

Rotation around the given axis: return pointer to self for convenience.

Reimplemented in Vector.

Definition at line 26 of file GeomObject.cxx.

Referenced by Vector::rotateX().

GeomObject & GeomObject::rotateY ( double a )
 

Reimplemented in Vector.

Definition at line 34 of file GeomObject.cxx.

Referenced by Vector::rotateY().

GeomObject & GeomObject::rotateZ ( double a )
 

Reimplemented in Vector.

Definition at line 41 of file GeomObject.cxx.

Referenced by Vector::rotateZ().

GeomObject & GeomObject::transform ( const CoordTransform & T ) [pure virtual]
 

virtual method to perform transformations that must be implemented by subclasses.

Reimplemented in CoordSystem, Helix, Point, Ray, Shape, Surface, Track, Vector, and Volume.

Referenced by move(), rotate(), rotateX(), rotateY(), and rotateZ().


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:20:13 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000