arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

NrroProbe Class Reference

#include <nrroProbe.h>

List of all members.


Detailed Description

Designed to nicely handle multi-channel volumes.

Definition at line 39 of file nrroProbe.h.

Public Types

typedef gage_t TYPE
 type of values measured, (float)

typedef gageKind * PKIND
 type for kind of probe scalor/vector/etc...

enum  {
  VALUE = 1 << 0, GRAD = 1 << 1, GRADMAG = 1 << 2, GRAD_EVAL = 1 << 3,
  GRAD_EVEC = 1 << 4, NORMAL = 1 << 5, HESS = 1 << 6, HESS_EVAL = 1 << 7,
  HESS_EVEC = 1 << 8, LAPLAC = 1 << 9, DD2 = 1 << 10, GEOM_TENS = 1 << 11,
  K1 = 1 << 12, K2 = 1 << 13, CURVE = 1 << 14
}
 measures, some of these are not appropriate for vector/scalor data types, some are valid for both, this is noted to the right More...


Public Member Functions

 NrroProbe (bool multiChannel=true, const NrroKernel &nk=CatmulRomKernel)
 need to know if you are probing a multi-channel volume or a vector field

virtual ~NrroProbe ()
unsigned int getProbeType (int vol=0) const
void setProbeType (unsigned int ptype, int vol=0)
void addNrro (const Nrro *n, int probeType=VALUE)
 get/set data to be/being probed

NrroSP getNrro (unsigned int vol=0)
 get nrro

void getNumChannels ()
NrroKernel getKernel () const
void setKernel (const NrroKernel &nk)
TYPEoperator() (float x=0, float y=0, float z=0)
 probe ()

gutz::vec3f getProbePos () const
int valLen (int v) const
TYPEgetVal (int v)
int gradLen (int v) const
TYPEgetGrad (int v)
TYPEgetGradMag (int v)
int gradEvalLen (int v) const
TYPEgetGradEval (int v)
int gradEvecLen (int v) const
TYPEgetGradEvec (int v)
TYPEgetNormal (int v)
TYPEgrad ()
 ...


Protected Member Functions

void update ()
 update

void setKernel ()
 set kernel

PKIND getProbeKind (const Nrro &n)
 get Probe Kind

unsigned int nrro2GageType (const Nrro &n, int probeType, PKIND kind) const
 get Probe Type

unsigned int gage2NrroType (unsigned int t, PKIND kind) const

Protected Attributes

gageContext * _ctx
NrroSPVec _nvec
gutz::vec3f _lastProbe
NrroKernel _nk
bool _multi


Member Typedef Documentation

typedef gageKind* NrroProbe::PKIND
 

type for kind of probe scalor/vector/etc...

Definition at line 53 of file nrroProbe.h.

Referenced by addNrro(), and getProbeKind().

typedef gage_t NrroProbe::TYPE
 

type of values measured, (float)

Definition at line 51 of file nrroProbe.h.

Referenced by grad(), and operator()().


Member Enumeration Documentation

anonymous enum
 

measures, some of these are not appropriate for vector/scalor data types, some are valid for both, this is noted to the right

Enumeration values:
VALUE 
GRAD  scl/vec
GRADMAG  scl/vec (vec: multigradient (MG))
GRAD_EVAL  scl/vec (vec: L2 of MG)
GRAD_EVEC  scl/vec (scl: grad mag)
NORMAL  scl/vec (scl: normal)
HESS  scl/vec (vec: evec of lagest eval)
HESS_EVAL  scl
HESS_EVEC  scl
LAPLAC  scl
DD2  scl
GEOM_TENS  scl
K1  scl
K2  scl
CURVE  scl

Definition at line 60 of file nrroProbe.h.


Constructor & Destructor Documentation

NrroProbe::NrroProbe bool  multiChannel = true,
const NrroKernel nk = CatmulRomKernel
 

need to know if you are probing a multi-channel volume or a vector field

Definition at line 35 of file nrroProbe.cpp.

References _ctx, and setKernel().

NrroProbe::~NrroProbe  )  [virtual]
 

Definition at line 43 of file nrroProbe.cpp.

References _ctx.


Member Function Documentation

void NrroProbe::addNrro const Nrro n,
int  probeType = VALUE
 

get/set data to be/being probed

Definition at line 72 of file nrroProbe.cpp.

References _ctx, _nvec, getProbeKind(), n, nrro2GageType(), NrroSP, PKIND, and update().

unsigned int NrroProbe::gage2NrroType unsigned int  pt,
PKIND  kind
const [protected]
 

convert to gauge types

Definition at line 192 of file nrroProbe.cpp.

References CURVE, DD2, GEOM_TENS, GRAD, GRAD_EVAL, GRAD_EVEC, GRADMAG, HESS, HESS_EVAL, HESS_EVEC, K1, K2, LAPLAC, NORMAL, and VALUE.

Referenced by getProbeType().

TYPE* NrroProbe::getGrad int  v  ) 
 

TYPE* NrroProbe::getGradEval int  v  ) 
 

TYPE* NrroProbe::getGradEvec int  v  ) 
 

TYPE* NrroProbe::getGradMag int  v  ) 
 

NrroKernel NrroProbe::getKernel  )  const [inline]
 

Definition at line 87 of file nrroProbe.h.

References _nk.

TYPE* NrroProbe::getNormal int  v  ) 
 

NrroSP NrroProbe::getNrro unsigned int  i = 0  ) 
 

get nrro

Definition at line 90 of file nrroProbe.cpp.

References _nvec, and NrroSP.

void NrroProbe::getNumChannels  ) 
 

NrroProbe::PKIND NrroProbe::getProbeKind const Nrro n  )  [protected]
 

get Probe Kind

Definition at line 121 of file nrroProbe.cpp.

References PKIND.

Referenced by addNrro().

gutz::vec3f NrroProbe::getProbePos  )  const [inline]
 

Definition at line 94 of file nrroProbe.h.

References _lastProbe.

unsigned int NrroProbe::getProbeType int  vol = 0  )  const
 

Definition at line 177 of file nrroProbe.cpp.

References _ctx, and gage2NrroType().

TYPE* NrroProbe::getVal int  v  ) 
 

TYPE* NrroProbe::grad  )  [inline]
 

...

Definition at line 115 of file nrroProbe.h.

References TYPE.

int NrroProbe::gradEvalLen int  v  )  const
 

int NrroProbe::gradEvecLen int  v  )  const
 

int NrroProbe::gradLen int  v  )  const
 

unsigned int NrroProbe::nrro2GageType const Nrro n,
int  pt,
PKIND  kind
const [protected]
 

get Probe Type

convert to gauge types

Definition at line 129 of file nrroProbe.cpp.

References CURVE, DD2, GEOM_TENS, GRAD, GRAD_EVAL, GRAD_EVEC, GRADMAG, HESS, HESS_EVAL, HESS_EVEC, K1, K2, LAPLAC, NORMAL, and VALUE.

Referenced by addNrro().

NrroProbe::TYPE * NrroProbe::operator() float  x = 0,
float  y = 0,
float  z = 0
 

probe ()

Definition at line 101 of file nrroProbe.cpp.

References _ctx, TYPE, x, y, and z.

void NrroProbe::setKernel  )  [protected]
 

set kernel

Definition at line 51 of file nrroProbe.cpp.

References _ctx, _nk, NrroKernel::DERIV, NrroKernel::DERIV2, NrroKernel::getGageKernelType(), NrroKernel::getNrrdKernel(), NrroKernel::getParams(), and NrroKernel::VALUE.

Referenced by NrroProbe(), and setKernel().

void NrroProbe::setKernel const NrroKernel nk  )  [inline]
 

Definition at line 88 of file nrroProbe.h.

References _nk, and setKernel().

void NrroProbe::setProbeType unsigned int  ptype,
int  vol = 0
 

Definition at line 186 of file nrroProbe.cpp.

void NrroProbe::update  )  [protected]
 

update

Definition at line 113 of file nrroProbe.cpp.

References _ctx.

Referenced by addNrro().

int NrroProbe::valLen int  v  )  const
 


Member Data Documentation

gageContext* NrroProbe::_ctx [protected]
 

Definition at line 126 of file nrroProbe.h.

Referenced by addNrro(), getProbeType(), NrroProbe(), operator()(), setKernel(), update(), and ~NrroProbe().

gutz::vec3f NrroProbe::_lastProbe [protected]
 

Definition at line 129 of file nrroProbe.h.

Referenced by getProbePos().

bool NrroProbe::_multi [protected]
 

Definition at line 133 of file nrroProbe.h.

NrroKernel NrroProbe::_nk [protected]
 

Definition at line 131 of file nrroProbe.h.

Referenced by getKernel(), and setKernel().

NrroSPVec NrroProbe::_nvec [protected]
 

Definition at line 127 of file nrroProbe.h.

Referenced by addNrro(), and getNrro().


The documentation for this class was generated from the following files:
Send questions, comments, and bug reports to:
jmk