HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SIM_FieldUtils.h File Reference
#include <GU/GU_Types.h>
#include "SIM_ScalarField.h"
#include "SIM_MatrixField.h"
#include "SIM_VectorField.h"
#include "SIM_IndexField.h"
+ Include dependency graph for SIM_FieldUtils.h:

Go to the source code of this file.

Functions

bool SIMfieldUtilsComputeSliceWithBorder (const UT_Vector3 &slice, const UT_Vector3 &totaldiv, UT_Vector3 overlapneg, UT_Vector3 overlappos, int slicenum, UT_Vector3 &minvxl, UT_Vector3 &maxvxl)
 
template<typename FIELDTYPE >
bool SIMfieldUtilsComputeSliceWithBorder (const FIELDTYPE *field, const UT_Vector3 &totaldiv, UT_Vector3 overlapneg, UT_Vector3 overlappos, int slicenum, UT_Vector3 &minvxl, UT_Vector3 &maxvxl)
 
template<typename FIELDTYPE >
bool SIMfieldUtilsComputeSlice (const FIELDTYPE *field, const UT_Vector3 &totaldiv, int slicenum, UT_Vector3 &minvxl, UT_Vector3 &maxvxl)
 
template<typename FIELDTYPE >
bool SIMfieldUtilsGetSliceBorder (const FIELDTYPE *field, int a_slice, int b_slice, UT_Vector3 &minvxl, UT_Vector3 &maxvxl)
 
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetDivisionsNoSlice (const FIELDTYPE *field)
 
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetDivisions (const FIELDTYPE *field)
 
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetSizeNoSlice (const FIELDTYPE *field)
 
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetSize (const FIELDTYPE *field)
 
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetCenter (const FIELDTYPE *field)
 
template<typename FIELDTYPE , typename F2 >
void SIMfieldUtilsMatch (FIELDTYPE *field, const F2 *srcfield)
 
void SIMfieldUtilsStealFields (SIM_RawIndexField **raw, SIM_IndexField *field)
 
void SIMfieldUtilsStealFields (SIM_RawField **raw, SIM_ScalarField *field)
 
void SIMfieldUtilsStealFields (SIM_RawField **raw, SIM_VectorField *field)
 
void SIMfieldUtilsStealFields (SIM_RawField **raw, SIM_MatrixField *field)
 
template<typename RAWFIELD >
void SIMfieldUtilsExchangeFields (const char *address, int port, RAWFIELD *dest, RAWFIELD *src, int slicenum, int offx, int offy, int offz, UT_Vector3 olddiv, UT_Vector3 newdiv, UT_Vector3 slicediv, UT_Vector3 overlapneg, UT_Vector3 overlappos)
 
void SIMfieldUtilsCopyWithOffset (SIM_IndexField *field, SIM_RawIndexField **raw, int offx, int offy, int offz, bool keepdata, UT_Vector3 olddivvec, UT_Vector3 newdivvec, const char *address, int port)
 
void SIMfieldUtilsCopyWithOffset (SIM_ScalarField *field, SIM_RawField **raw, int offx, int offy, int offz, bool keepdata, UT_Vector3 olddivvec, UT_Vector3 newdivvec, const char *address, int port)
 
void SIMfieldUtilsCopyWithOffset (SIM_VectorField *field, SIM_RawField **raw, int offx, int offy, int offz, bool keepdata, UT_Vector3 olddivvec, UT_Vector3 newdivvec, const char *address, int port)
 
void SIMfieldUtilsCopyWithOffset (SIM_MatrixField *field, SIM_RawField **raw, int offx, int offy, int offz, bool keepdata, UT_Vector3 olddivvec, UT_Vector3 newdivvec, const char *address, int port)
 
template<typename FIELDTYPE >
void SIMfieldUtilsResizeKeepDataAndSnap (FIELDTYPE *field, UT_Vector3 size, UT_Vector3 center, bool keepdata, const char *address, int port, bool &snapvalid, UT_Vector3 &snapsize, UT_Vector3 &snapcenter)
 
template<typename FIELDTYPE >
void SIMfieldUtilsResizeKeepData (FIELDTYPE *field, UT_Vector3 size, UT_Vector3 center, bool keepdata, const char *address, int port)
 

Function Documentation

template<typename FIELDTYPE >
bool SIMfieldUtilsComputeSlice ( const FIELDTYPE *  field,
const UT_Vector3 totaldiv,
int  slicenum,
UT_Vector3 minvxl,
UT_Vector3 maxvxl 
)

Definition at line 113 of file SIM_FieldUtils.h.

bool SIMfieldUtilsComputeSliceWithBorder ( const UT_Vector3 slice,
const UT_Vector3 totaldiv,
UT_Vector3  overlapneg,
UT_Vector3  overlappos,
int  slicenum,
UT_Vector3 minvxl,
UT_Vector3 maxvxl 
)
inline

Returns true if there is a slice to be performed. The slice is the half inclusive interval [minvxl, maxvxl)

Definition at line 28 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
bool SIMfieldUtilsComputeSliceWithBorder ( const FIELDTYPE *  field,
const UT_Vector3 totaldiv,
UT_Vector3  overlapneg,
UT_Vector3  overlappos,
int  slicenum,
UT_Vector3 minvxl,
UT_Vector3 maxvxl 
)

Definition at line 103 of file SIM_FieldUtils.h.

void SIMfieldUtilsCopyWithOffset ( SIM_IndexField field,
SIM_RawIndexField **  raw,
int  offx,
int  offy,
int  offz,
bool  keepdata,
UT_Vector3  olddivvec,
UT_Vector3  newdivvec,
const char *  address,
int  port 
)
inline

Definition at line 493 of file SIM_FieldUtils.h.

void SIMfieldUtilsCopyWithOffset ( SIM_ScalarField field,
SIM_RawField **  raw,
int  offx,
int  offy,
int  offz,
bool  keepdata,
UT_Vector3  olddivvec,
UT_Vector3  newdivvec,
const char *  address,
int  port 
)
inline

Definition at line 523 of file SIM_FieldUtils.h.

void SIMfieldUtilsCopyWithOffset ( SIM_VectorField field,
SIM_RawField **  raw,
int  offx,
int  offy,
int  offz,
bool  keepdata,
UT_Vector3  olddivvec,
UT_Vector3  newdivvec,
const char *  address,
int  port 
)
inline

Definition at line 552 of file SIM_FieldUtils.h.

void SIMfieldUtilsCopyWithOffset ( SIM_MatrixField field,
SIM_RawField **  raw,
int  offx,
int  offy,
int  offz,
bool  keepdata,
UT_Vector3  olddivvec,
UT_Vector3  newdivvec,
const char *  address,
int  port 
)
inline

Definition at line 584 of file SIM_FieldUtils.h.

template<typename RAWFIELD >
void SIMfieldUtilsExchangeFields ( const char *  address,
int  port,
RAWFIELD *  dest,
RAWFIELD *  src,
int  slicenum,
int  offx,
int  offy,
int  offz,
UT_Vector3  olddiv,
UT_Vector3  newdiv,
UT_Vector3  slicediv,
UT_Vector3  overlapneg,
UT_Vector3  overlappos 
)
template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetCenter ( const FIELDTYPE *  field)

Definition at line 388 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetDivisions ( const FIELDTYPE *  field)

Definition at line 268 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetDivisionsNoSlice ( const FIELDTYPE *  field)

Definition at line 151 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetSize ( const FIELDTYPE *  field)

Definition at line 361 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
UT_Vector3 SIMfieldUtilsGetSizeNoSlice ( const FIELDTYPE *  field)

Definition at line 285 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
bool SIMfieldUtilsGetSliceBorder ( const FIELDTYPE *  field,
int  a_slice,
int  b_slice,
UT_Vector3 minvxl,
UT_Vector3 maxvxl 
)

Returns true if there is any overlap between the two slices. [minvxl, maxvxl) is the region of overlap. This is the intersection of the two slice fields.

Definition at line 126 of file SIM_FieldUtils.h.

template<typename FIELDTYPE , typename F2 >
void SIMfieldUtilsMatch ( FIELDTYPE *  field,
const F2 *  srcfield 
)

Definition at line 425 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
void SIMfieldUtilsResizeKeepData ( FIELDTYPE *  field,
UT_Vector3  size,
UT_Vector3  center,
bool  keepdata,
const char *  address,
int  port 
)

Definition at line 854 of file SIM_FieldUtils.h.

template<typename FIELDTYPE >
void SIMfieldUtilsResizeKeepDataAndSnap ( FIELDTYPE *  field,
UT_Vector3  size,
UT_Vector3  center,
bool  keepdata,
const char *  address,
int  port,
bool &  snapvalid,
UT_Vector3 snapsize,
UT_Vector3 snapcenter 
)

Definition at line 619 of file SIM_FieldUtils.h.

void SIMfieldUtilsStealFields ( SIM_RawIndexField **  raw,
SIM_IndexField field 
)
inline

Definition at line 454 of file SIM_FieldUtils.h.

void SIMfieldUtilsStealFields ( SIM_RawField **  raw,
SIM_ScalarField field 
)
inline

Definition at line 460 of file SIM_FieldUtils.h.

void SIMfieldUtilsStealFields ( SIM_RawField **  raw,
SIM_VectorField field 
)
inline

Definition at line 466 of file SIM_FieldUtils.h.

void SIMfieldUtilsStealFields ( SIM_RawField **  raw,
SIM_MatrixField field 
)
inline

Definition at line 473 of file SIM_FieldUtils.h.