SIM/SIM_RawField.h File Reference

#include "SIM_API.h"
#include <UT/UT_VoxelArray.h>
#include <UT/UT_ThreadedAlgorithm.h>
#include <UT/UT_Vector.h>
#include <UT/UT_FloatArray.h>
#include <UT/UT_SparseMatrix.h>
#include <UT/UT_Wavelet.h>

Go to the source code of this file.

Classes

class  SIM_RawField
class  SIM_RawFieldCellIterator

Defines

#define CALL_PROBEXY(XSTEP, YSTEP, src, dst, command)
#define CALL_PROBEX(XSTEP, src, dst, command)
#define CALL_VOXELPROBE(src, dst, command)

Typedefs

typedef UT_SparseMatrixF SIM_RawSparseMatrix
typedef UT_Vector3(* sim_PointVelocity )(const UT_Vector3 &, int)

Enumerations

enum  SIM_FieldSample {
  SIM_SAMPLE_CENTER = 0, SIM_SAMPLE_FACEX = 1, SIM_SAMPLE_FACEY = 2, SIM_SAMPLE_EDGEXY = 3,
  SIM_SAMPLE_FACEZ = 4, SIM_SAMPLE_EDGEXZ = 5, SIM_SAMPLE_EDGEYZ = 6, SIM_SAMPLE_CORNER = 7
}
enum  SIM_FieldBoundary {
  SIM_BOUNDARY_NONE, SIM_BOUNDARY_SAME, SIM_BOUNDARY_ZERO, SIM_BOUNDARY_NEGATE,
  SIM_BOUNDARY_FIXED
}
enum  SIM_FieldAdvection { SIM_ADVECT_SINGLE = 0, SIM_ADVECT_TRACE = 1, SIM_ADVECT_MIDPOINT = 2 }


Define Documentation

#define CALL_PROBEX ( XSTEP,
src,
dst,
command   ) 

Value:

{                                                       \
    if ((dstsample ^ srcsample) & 2)                    \
    {                                                   \
        if (dstsample & 2)      /* YStep -1 */          \
        {                                               \
            CALL_PROBEXY(XSTEP, -1, src, dst, command); \
        }                                               \
        else                    /* YStep 1 */           \
        {                                               \
            CALL_PROBEXY(XSTEP, 1, src, dst, command);  \
        }                                               \
    }                                                   \
    else                        /* YStep 0 */           \
    {                                                   \
        CALL_PROBEXY(XSTEP, 0, src, dst, command);      \
    }                                                   \
}

Definition at line 933 of file SIM_RawField.h.

#define CALL_PROBEXY ( XSTEP,
YSTEP,
src,
dst,
command   ) 

Value:

{                                                       \
    if ((dstsample ^ srcsample) & 4)                    \
    {                                                   \
        if (dstsample & 4)      /* ZStep -1 */          \
        {                                               \
            UT_VoxelProbeAverage<fpreal32, XSTEP, YSTEP, -1> theprobe;  \
            theprobe.setArray(src->field());            \
            command;                                    \
        }                                               \
        else                    /* ZStep 1 */           \
        {                                               \
            UT_VoxelProbeAverage<fpreal32, XSTEP, YSTEP, 1> theprobe;   \
            theprobe.setArray(src->field());            \
            command;                                    \
        }                                               \
    }                                                   \
    else                        /* ZStep 0 */           \
    {                                                   \
        UT_VoxelProbeAverage<fpreal32, XSTEP, YSTEP, 0> theprobe;       \
        theprobe.setArray(src->field());                \
        command;                                        \
    }                                                   \
}

Definition at line 908 of file SIM_RawField.h.

#define CALL_VOXELPROBE ( src,
dst,
command   ) 

Value:

{                                                       \
    int         dstsample, srcsample;                   \
    dstsample = dst->getSample();                       \
    srcsample = src->getSample();                       \
    if ((dstsample ^ srcsample) & 1)                    \
    {                                                   \
        if (dstsample & 1)      /* XStep -1 */          \
        {                                               \
            CALL_PROBEX(-1, src, dst, command);         \
        }                                               \
        else                    /* XStep 1 */           \
        {                                               \
            CALL_PROBEX(1, src, dst, command);          \
        }                                               \
    }                                                   \
    else                        /* XStep 0 */           \
    {                                                   \
        CALL_PROBEX(0, src, dst, command);              \
    }                                                   \
}

Definition at line 952 of file SIM_RawField.h.


Typedef Documentation

typedef UT_Vector3(* sim_PointVelocity)(const UT_Vector3 &, int)

Definition at line 83 of file SIM_RawField.h.

Definition at line 39 of file SIM_RawField.h.


Enumeration Type Documentation

Enumerator:
SIM_ADVECT_SINGLE 
SIM_ADVECT_TRACE 
SIM_ADVECT_MIDPOINT 

Definition at line 75 of file SIM_RawField.h.

Enumerator:
SIM_BOUNDARY_NONE 
SIM_BOUNDARY_SAME 
SIM_BOUNDARY_ZERO 
SIM_BOUNDARY_NEGATE 
SIM_BOUNDARY_FIXED 

Definition at line 65 of file SIM_RawField.h.

Enumerator:
SIM_SAMPLE_CENTER 
SIM_SAMPLE_FACEX 
SIM_SAMPLE_FACEY 
SIM_SAMPLE_EDGEXY 
SIM_SAMPLE_FACEZ 
SIM_SAMPLE_EDGEXZ 
SIM_SAMPLE_EDGEYZ 
SIM_SAMPLE_CORNER 

Definition at line 53 of file SIM_RawField.h.


Generated on Thu May 24 00:09:05 2012 for HDK by  doxygen 1.5.9