versor  3.0
C++11 library for Geometric algebra
Public Member Functions | Protected Attributes | List of all members
vsr::CubicLattice< LPnt > Class Template Reference

Discretized Volume Indexing (Isometric Cubic Lattice w/o data) More...

#include <vsr_cubicLattice.h>

Public Member Functions

 CubicLattice (int _w=1, int _h=1, int _d=1, double _sx=1.0, double _sy=1.0, double _sz=1.0)
 
void onDestroy ()
 
CubicLatticeresize (int _w, int _h, int _d, double _sx=1.0, double _sy=1.0, double _sz=1.0)
 
int w () const
 
int h () const
 
int d () const
 
int num () const
 
int numVxl () const
 
int idx (int i, int j, int k=0) const
 Get Index In Array.
 
Vxl vxl (int ix) const
 
Vxlvxl (int ix)
 
Nbr nbr (int ix) const
 
Nbrnbr (int ix)
 
Nbr nbrVxl (int ix) const
 
NbrnbrVxl (int ix)
 
double tw () const
 Total Width.
 
double ow () const
 Offset Width.
 
double th () const
 Total Height.
 
double oh () const
 Offset Height.
 
double td () const
 Total Depth.
 
double od () const
 Offset Depth.
 
double px (int i) const
 Spatial Positions of ith element in x direction.
 
double py (int j) const
 Spatial Positions of jth element in y direction.
 
double pz (int k) const
 Spatial Positions of kth element in z direction.
 
void alloc ()
 
void initPoints ()
 
void init ()
 
template<class V >
Vxl vxlAt (const V &tv) const
 Voxel of Vector v.
 
template<class V >
bound (const V &p) const
 
template<class V >
range2D (const V &v) const
 
template<class V >
range (const V &v) const
 
void FE (Nbr nb)
 Routines to Find Face and Edge Boundary.
 
void vxlFE (Nbr nb)
 
Patch surfIdx (double u, double v)
 Indicex of surface at u, v [0, 1].
 
VPatch vidx (double u, double v, double w) const
 Volume Index at u,v,w [0-1].
 
Patch idxU (double t)
 Indices of Line at T.
 
LPnt & gridAt (int w=0, int h=0, int d=0)
 Set grid data by Coordinate.
 
LPnt gridAt (int w=0, int h=0, int d=0) const
 Get grid data by Coordinate.
 
LPnt & grid (int i)
 Set Grid (position) Data.
 
LPnt grid (int i) const
 Get Grid (position) Data.
 
LPnt surf (double u, double v)
 
LPnt surfGrid (double u, double v)
 
LPnt surfPnt (double u, double v)
 
vector< int > & face ()
 
int face (int ix) const
 
vector< int > & faceVxl ()
 
Vxl faceVxl (int ix)
 
LPnt * gridPtr () const
 
void gridPtr (LPnt *lp)
 
template<>
void initPoints ()
 

Protected Attributes

int mWidth
 
int mHeight
 
int mDepth
 
int mNum
 
int mNumVxl
 
double mSpacingX
 
double mSpacingY
 
double mSpacingZ
 
LPnt * mPoint
 
VxlmVxl
 
NbrmNbr
 
NbrmNbrVxl
 
vector< int > mFace
 
vector< int > mEdge
 
vector< int > mCorner
 
vector< int > mFaceVxl
 
vector< int > mEdgeVxl
 
vector< int > mCornerVxl
 

Detailed Description

template<class LPnt>
class vsr::CubicLattice< LPnt >

Discretized Volume Indexing (Isometric Cubic Lattice w/o data)


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