Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

mlib::NDCZpt Class Reference
["NDCZ" Coordinate System]

A point in NDCZ coordinates. More...

#include <points.H>

Inheritance diagram for mlib::NDCZpt:

Inheritance graph
[legend]
Collaboration diagram for mlib::NDCZpt:

Collaboration graph
[legend]
List of all members.

Public Types

typedef double value_type

Public Member Functions

 Point3 ()
 Point3 (double s)
 Point3 (double x, double y, double z)
void set (double x, double y, double z)
const double * data () const
double operator[] (int index) const
double & operator[] (int index)
NDCZpt operator * (double s) const
NDCZpt operator/ (double s) const
NDCZpt operator+ (const NDCZpt &p) const
 Adds a point to a point.
NDCZpt operator+ (const NDCZvec &v) const
NDCZvec operator- (const NDCZpt &p) const
NDCZpt operator- (const NDCZvec &v) const
NDCZpt operator- () const
void operator+= (const NDCZpt &p)
 Adds a point to a point.
void operator+= (const NDCZvec &v)
void operator-= (const NDCZvec &v)
void operator *= (double s)
void operator/= (double s)
double dist_sqrd (const NDCZpt &p) const
 Computes the distance squared between two points.
double dist (const NDCZpt &p) const
 Computes the distance between two points.
bool operator== (const NDCZpt &p) const
 Are the two points exactly equal (component wise)?
bool operator!= (const NDCZpt &p) const
 Are the two points not equal (component wise)?
bool is_equal (const NDCZpt &p, double epsSqrd=epsAbsSqrdMath()) const
 Is the distance squared between the two points essentially zero?
Constructors
 NDCZpt ()
 NDCZpt (double s)
 NDCZpt (double x, double y, double z)
 NDCZpt (CWpt &w)
 NDCZpt (CWpt &w, CWtransf &PM)
 NDCZpt (CXYpt &)
 NDCZpt (CNDCpt &)
 NDCZpt (CPIXEL &)
Two Point Operations
double planar_length (CNDCZpt &p) const
 Return the distance between NDCZpts, ignoring z-coord.
Misc. Functions
bool in_frustum () const
 Project to an XYpt_list, provided all points lie in the view frustum. Assumes Wpts are not in "object space.".

Static Public Member Functions

static CNDCZptOrigin ()
static int dim ()

Protected Attributes

double _x
double _y
double _z

Static Protected Attributes

static CNDCZpt _origin

Detailed Description

A point in NDCZ coordinates.

Definition at line 734 of file points.H.


Member Typedef Documentation

typedef double mlib::Point3< NDCZpt , NDCZvec >::value_type [inherited]
 

Definition at line 62 of file point3.H.


Constructor & Destructor Documentation

mlib::NDCZpt::NDCZpt  )  [inline]
 

Definition at line 745 of file points.H.

mlib::NDCZpt::NDCZpt double  s  )  [inline, explicit]
 

Definition at line 746 of file points.H.

mlib::NDCZpt::NDCZpt double  x,
double  y,
double  z
[inline]
 

Definition at line 747 of file points.H.

mlib::NDCZpt::NDCZpt CWpt w  ) 
 

Definition at line 250 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, mlib::Point3< NDCZpt, NDCZvec >::_z, and VIEW_NDC_TRANS.

mlib::NDCZpt::NDCZpt CWpt w,
CWtransf PM
 

Definition at line 259 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, and mlib::Point3< NDCZpt, NDCZvec >::_z.

mlib::NDCZpt::NDCZpt CXYpt  ) 
 

Definition at line 275 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, mlib::Point3< NDCZpt, NDCZvec >::_z, and VIEW_ASPECT.

mlib::NDCZpt::NDCZpt CNDCpt  ) 
 

Definition at line 288 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, and mlib::Point3< NDCZpt, NDCZvec >::_z.

mlib::NDCZpt::NDCZpt CPIXEL  ) 
 

Definition at line 295 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, mlib::Point3< NDCZpt, NDCZvec >::_z, VIEW_ASPECT, and VIEW_SIZE.


Member Function Documentation

const double* mlib::Point3< NDCZpt , NDCZvec >::data  )  const [inline, inherited]
 

Definition at line 71 of file point3.H.

References mlib::Point3< P, V >::_x.

static int mlib::Point3< NDCZpt , NDCZvec >::dim  )  [inline, static, inherited]
 

Definition at line 63 of file point3.H.

double mlib::Point3< NDCZpt , NDCZvec >::dist const NDCZpt p  )  const [inline, inherited]
 

Computes the distance between two points.

Definition at line 111 of file point3.H.

References mlib::Point3< P, V >::dist_sqrd().

double mlib::Point3< NDCZpt , NDCZvec >::dist_sqrd const NDCZpt p  )  const [inline, inherited]
 

Computes the distance squared between two points.

Definition at line 107 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, mlib::Point3< P, V >::_z, and sqr().

bool mlib::NDCZpt::in_frustum  )  const
 

Project to an XYpt_list, provided all points lie in the view frustum. Assumes Wpts are not in "object space.".

Definition at line 177 of file points.C.

References mlib::Point3< NDCZpt, NDCZvec >::_x, mlib::Point3< NDCZpt, NDCZvec >::_y, mlib::Point3< NDCZpt, NDCZvec >::_z, in_interval(), and VIEW_SIZE.

Referenced by BMESH::get_enclosed_verts(), and mlib::Wpt_list::project().

bool mlib::Point3< NDCZpt , NDCZvec >::is_equal const NDCZpt p,
double  epsSqrd = epsAbsSqrdMath()
const [inline, inherited]
 

Is the distance squared between the two points essentially zero?

Definition at line 129 of file point3.H.

References mlib::Point3< P, V >::dist_sqrd().

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator * double  s  )  const [inline, inherited]
 

Definition at line 81 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

void mlib::Point3< NDCZpt , NDCZvec >::operator *= double  s  )  [inline, inherited]
 

Definition at line 98 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

bool mlib::Point3< NDCZpt , NDCZvec >::operator!= const NDCZpt p  )  const [inline, inherited]
 

Are the two points not equal (component wise)?

Definition at line 121 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator+ const NDCZvec v  )  const [inline, inherited]
 

Definition at line 87 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator+ const NDCZpt p  )  const [inline, inherited]
 

Adds a point to a point.

Warning:
This should only be used to add points that have already been pre-weighted by coefficients that add up to 1.

Definition at line 86 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

void mlib::Point3< NDCZpt , NDCZvec >::operator+= const NDCZvec v  )  [inline, inherited]
 

Definition at line 96 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

void mlib::Point3< NDCZpt , NDCZvec >::operator+= const NDCZpt p  )  [inline, inherited]
 

Adds a point to a point.

Warning:
This should only be used to add points that have already been pre-weighted by coefficients that add up to 1.

Definition at line 95 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator-  )  const [inline, inherited]
 

Definition at line 90 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator- const NDCZvec v  )  const [inline, inherited]
 

Definition at line 89 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZvec mlib::Point3< NDCZpt , NDCZvec >::operator- const NDCZpt p  )  const [inline, inherited]
 

Definition at line 88 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

void mlib::Point3< NDCZpt , NDCZvec >::operator-= const NDCZvec v  )  [inline, inherited]
 

Definition at line 97 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

NDCZpt mlib::Point3< NDCZpt , NDCZvec >::operator/ double  s  )  const [inline, inherited]
 

Definition at line 82 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

void mlib::Point3< NDCZpt , NDCZvec >::operator/= double  s  )  [inline, inherited]
 

Definition at line 99 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

bool mlib::Point3< NDCZpt , NDCZvec >::operator== const NDCZpt p  )  const [inline, inherited]
 

Are the two points exactly equal (component wise)?

Definition at line 119 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.

double& mlib::Point3< NDCZpt , NDCZvec >::operator[] int  index  )  [inline, inherited]
 

Definition at line 74 of file point3.H.

References mlib::Point3< P, V >::_x.

double mlib::Point3< NDCZpt , NDCZvec >::operator[] int  index  )  const [inline, inherited]
 

Definition at line 73 of file point3.H.

References mlib::Point3< P, V >::_x.

static CNDCZpt& mlib::NDCZpt::Origin  )  [inline, static]
 

Definition at line 777 of file points.H.

References _origin.

double mlib::NDCZpt::planar_length CNDCZpt p  )  const [inline]
 

Return the distance between NDCZpts, ignoring z-coord.

Definition at line 760 of file points.H.

References mlib::Point3< NDCZpt, NDCZvec >::_x, and mlib::Point3< NDCZpt, NDCZvec >::_y.

mlib::Point3< NDCZpt , NDCZvec >::Point3 double  x,
double  y,
double  z
[inline, inherited]
 

Definition at line 55 of file point3.H.

mlib::Point3< NDCZpt , NDCZvec >::Point3 double  s  )  [inline, explicit, inherited]
 

Definition at line 54 of file point3.H.

mlib::Point3< NDCZpt , NDCZvec >::Point3  )  [inline, inherited]
 

Definition at line 53 of file point3.H.

void mlib::Point3< NDCZpt , NDCZvec >::set double  x,
double  y,
double  z
[inline, inherited]
 

Definition at line 70 of file point3.H.

References mlib::Point3< P, V >::_x, mlib::Point3< P, V >::_y, and mlib::Point3< P, V >::_z.


Member Data Documentation

CNDCZpt mlib::NDCZpt::_origin [static, protected]
 

Definition at line 738 of file points.H.

Referenced by Origin().

double mlib::Point3< NDCZpt , NDCZvec >::_x [protected, inherited]
 

Definition at line 46 of file point3.H.

Referenced by in_frustum(), NDCZpt(), and planar_length().

double mlib::Point3< NDCZpt , NDCZvec >::_y [protected, inherited]
 

Definition at line 46 of file point3.H.

Referenced by in_frustum(), NDCZpt(), and planar_length().

double mlib::Point3< NDCZpt , NDCZvec >::_z [protected, inherited]
 

Definition at line 46 of file point3.H.

Referenced by in_frustum(), and NDCZpt().


The documentation for this class was generated from the following files:
Generated on Mon Sep 18 11:48:18 2006 for jot by  doxygen 1.4.4