Main Page   Namespace List   Class Hierarchy   Compound List   File List   Header Files   Namespace Members   Compound Members   File Members   Related Pages  

/msg/src/geom/point3d.h

This is the verbatim text of the point3d.h include file.
/* -*- C -*-
 * point3d.h
 * $Id: point3d.h,v 1.1.1.1 2000/07/20 20:54:13 ghali Exp $
 */

#ifndef POINT3D_H
#define POINT3D_H

#include <stdlib.h>
#include <iostream.h>
#include "vector3d.h"
#include "direction3d.h"

namespace MSG {

  class Point3d {
  protected:
    double x, y, z;
  public:
    Point3d();
    Point3d(double xx, double yy, double zz);
    virtual double X() const;
    virtual double Y() const;
    virtual double Z() const;
    virtual void setX(double a);
    virtual void setY(double a);
    virtual void setZ(double a);

    double sqr_dist(const Point3d& p) const;

    // Point3d::findMid() in regular/platonic/regular.h
    Point3d findSphericalMid(const Point3d& p) const;

    Point3d operator+(Vector3d v);

    Point3d operator+(Direction3d v);

    Point3d operator-(Vector3d v);

    friend ostream& operator<<( ostream& out, const Point3d& p);

    friend istream& operator>>( istream& in, Point3d& p );

    // virtual void print() const { cout << " ("<<x<<", "<<y<<", "<<z<<") "; }
  };
}

#endif

Generated at Sat Jul 22 00:32:16 2000 for MSG by doxygen 1.0.0 written by Dimitri van Heesch, © 1997-1999