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

mlib::UVvec Class Reference
["UV" Coordinate System]

A vector in UV coordinates. More...

#include <points.H>

Inheritance diagram for mlib::UVvec:

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef double value_type

Public Member Functions

 Vec2 ()
 Vec2 (double x, double y)
UVvec operator+ (const UVvec &v) const
UVvec operator- (const UVvec &v) const
UVvec operator- () const
double operator * (const UVvec &v) const
UVvec operator * (double s) const
UVvec operator/ (double s) const
void operator+= (const UVvec &v)
void operator-= (const UVvec &v)
void operator *= (double s)
void operator/= (double s)
double operator[] (int index) const
double & operator[] (int index)
double length () const
double length_sqrd () const
bool is_exact_null () const
bool is_null (double epsSqrdMath=epsNorSqrdMath()) const
 Tells if the vector is basically the zero vector.
UVvec normalized () const
 Returns a unit-length copy of this vector.
UVvec perpend () const
 Returns a copy of the vector rotated 90 degrees CCW.
double dist (const UVvec &v) const
double dist_sqrd (const UVvec &v) const
double signed_angle (const UVvec &) const
 Returns the signed angle between this vector and the given one.
double angle (const UVvec &v) const
 Returns the unsigned angle between the two vectors. The result will lie between 0 and pi radians.
double tlen (const UVvec &b) const
 Return (this * b) / (b * b).
UVvec projected (const UVvec &b) const
 Returns the projection of this onto b.
UVvec orthogonalized (const UVvec &b) const
 Returns this vector minus its projection onto b.
bool is_equal (const UVvec &v, double epsSqrd=epsNorSqrdMath()) const
bool is_parallel (const UVvec &) const
bool operator== (const UVvec &v) const
bool operator!= (const UVvec &v) const
Constructors
 UVvec ()
 UVvec (double u, double v)

Static Public Member Functions

static CUVvecnull ()
static CUVvecU ()
static CUVvecV ()
static int dim ()

Protected Attributes

double _x
double _y

Static Protected Attributes

static CUVvec _null_vec
static CUVvec _u_dir
static CUVvec _v_dir

Detailed Description

A vector in UV coordinates.

Definition at line 1238 of file points.H.


Member Typedef Documentation

typedef double mlib::Vec2< UVvec >::value_type [inherited]
 

Definition at line 47 of file vec2.H.


Constructor & Destructor Documentation

mlib::UVvec::UVvec  )  [inline]
 

Definition at line 1251 of file points.H.

mlib::UVvec::UVvec double  u,
double  v
[inline]
 

Definition at line 1252 of file points.H.


Member Function Documentation

double mlib::Vec2< UVvec >::angle const UVvec v  )  const [inherited]
 

Returns the unsigned angle between the two vectors. The result will lie between 0 and pi radians.

static int mlib::Vec2< UVvec >::dim  )  [inline, static, inherited]
 

Definition at line 48 of file vec2.H.

double mlib::Vec2< UVvec >::dist const UVvec v  )  const [inline, inherited]
 

Definition at line 107 of file vec2.H.

double mlib::Vec2< UVvec >::dist_sqrd const UVvec v  )  const [inline, inherited]
 

Definition at line 108 of file vec2.H.

bool mlib::Vec2< UVvec >::is_equal const UVvec v,
double  epsSqrd = epsNorSqrdMath()
const [inline, inherited]
 

Definition at line 141 of file vec2.H.

bool mlib::Vec2< UVvec >::is_exact_null  )  const [inline, inherited]
 

Definition at line 84 of file vec2.H.

bool mlib::Vec2< UVvec >::is_null double  epsSqrdMath = epsNorSqrdMath()  )  const [inline, inherited]
 

Tells if the vector is basically the zero vector.

Definition at line 87 of file vec2.H.

bool mlib::Vec2< UVvec >::is_parallel const UVvec  )  const [inherited]
 

double mlib::Vec2< UVvec >::length  )  const [inline, inherited]
 

Definition at line 81 of file vec2.H.

double mlib::Vec2< UVvec >::length_sqrd  )  const [inline, inherited]
 

Definition at line 82 of file vec2.H.

UVvec mlib::Vec2< UVvec >::normalized  )  const [inherited]
 

Returns a unit-length copy of this vector.

static CUVvec& mlib::UVvec::null  )  [inline, static]
 

Definition at line 1256 of file points.H.

References _null_vec.

UVvec mlib::Vec2< UVvec >::operator * double  s  )  const [inline, inherited]
 

Definition at line 60 of file vec2.H.

double mlib::Vec2< UVvec >::operator * const UVvec v  )  const [inline, inherited]
 

Definition at line 57 of file vec2.H.

void mlib::Vec2< UVvec >::operator *= double  s  )  [inline, inherited]
 

Definition at line 65 of file vec2.H.

bool mlib::Vec2< UVvec >::operator!= const UVvec v  )  const [inline, inherited]
 

Definition at line 151 of file vec2.H.

UVvec mlib::Vec2< UVvec >::operator+ const UVvec v  )  const [inline, inherited]
 

Definition at line 55 of file vec2.H.

void mlib::Vec2< UVvec >::operator+= const UVvec v  )  [inline, inherited]
 

Definition at line 63 of file vec2.H.

UVvec mlib::Vec2< UVvec >::operator-  )  const [inline, inherited]
 

Definition at line 58 of file vec2.H.

UVvec mlib::Vec2< UVvec >::operator- const UVvec v  )  const [inline, inherited]
 

Definition at line 56 of file vec2.H.

void mlib::Vec2< UVvec >::operator-= const UVvec v  )  [inline, inherited]
 

Definition at line 64 of file vec2.H.

UVvec mlib::Vec2< UVvec >::operator/ double  s  )  const [inline, inherited]
 

Definition at line 61 of file vec2.H.

void mlib::Vec2< UVvec >::operator/= double  s  )  [inline, inherited]
 

Definition at line 66 of file vec2.H.

bool mlib::Vec2< UVvec >::operator== const UVvec v  )  const [inline, inherited]
 

Definition at line 150 of file vec2.H.

double& mlib::Vec2< UVvec >::operator[] int  index  )  [inline, inherited]
 

Definition at line 74 of file vec2.H.

double mlib::Vec2< UVvec >::operator[] int  index  )  const [inline, inherited]
 

Definition at line 73 of file vec2.H.

UVvec mlib::Vec2< UVvec >::orthogonalized const UVvec b  )  const [inline, inherited]
 

Returns this vector minus its projection onto b.

Definition at line 134 of file vec2.H.

UVvec mlib::Vec2< UVvec >::perpend  )  const [inline, inherited]
 

Returns a copy of the vector rotated 90 degrees CCW.

Definition at line 100 of file vec2.H.

UVvec mlib::Vec2< UVvec >::projected const UVvec b  )  const [inline, inherited]
 

Returns the projection of this onto b.

Definition at line 131 of file vec2.H.

double mlib::Vec2< UVvec >::signed_angle const UVvec  )  const [inherited]
 

Returns the signed angle between this vector and the given one.

I.e., returns the angle by which to rotate this vector counter-clockwise to align with the given vector. The result will be negative if the smallest rotation to get to the given vector is in the clockwise direction. The result will lie between -pi and pi radians:

double mlib::Vec2< UVvec >::tlen const UVvec b  )  const [inline, inherited]
 

Return (this * b) / (b * b).

Definition at line 125 of file vec2.H.

static CUVvec& mlib::UVvec::U  )  [inline, static]
 

Definition at line 1257 of file points.H.

References _u_dir.

static CUVvec& mlib::UVvec::V  )  [inline, static]
 

Definition at line 1258 of file points.H.

References _v_dir.

mlib::Vec2< UVvec >::Vec2 double  x,
double  y
[inline, inherited]
 

Definition at line 40 of file vec2.H.

mlib::Vec2< UVvec >::Vec2  )  [inline, inherited]
 

Definition at line 39 of file vec2.H.


Member Data Documentation

CUVvec mlib::UVvec::_null_vec [static, protected]
 

Definition at line 1242 of file points.H.

Referenced by null().

CUVvec mlib::UVvec::_u_dir [static, protected]
 

Definition at line 1243 of file points.H.

Referenced by U().

CUVvec mlib::UVvec::_v_dir [static, protected]
 

Definition at line 1244 of file points.H.

Referenced by V().

double mlib::Vec2< UVvec >::_x [protected, inherited]
 

Definition at line 32 of file vec2.H.

double mlib::Vec2< UVvec >::_y [protected, inherited]
 

Definition at line 32 of file vec2.H.


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