COVISE Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
covise::coFixUsg Class Reference

#include <coFixUsg.h>

Public Types

enum  { FIX_ERROR = -1 }
 

Public Member Functions

 coFixUsg ()
 
 coFixUsg (int max_vertices, float delta, bool opt_mem=false)
 
int fixUsg (const coDistributedObject *geo_in, coDistributedObject **geo_out, const char *geoObjName, int num_val, const coDistributedObject *const *data_in, coDistributedObject **data_out, const char **objName)
 
int fixUsg (int num_elem, int num_conn, int num_point, const int *elem_list, const int *conn_list, const int *type_list, const float *xcoord, const float *ycoord, const float *zcoord, int &new_num_elem, int &new_num_conn, int &new_num_coord, int **new_elem_list, int **new_conn_list, int **new_type_list, float **new_xcoord, float **new_ycoord, float **new_zcoord, int num_val, int *numComp, int *dataSize, float **in_x, float **in_y, float **in_z, float ***out_x, float ***out_y, float ***out_z)
 
template<class T >
void mapArray (const T *src, T *target, const int *filtered2source, int num_target)
 
template<class T >
void updateArray (const T *src, T *target, const int *source2filtered, int num_target)
 

Private Types

enum  { UNTOUCHED = -2, REMOVE = -1 }
 
enum  { UNCHANGED = -1 }
 

Private Member Functions

bool isEqual (float x1, float y1, float z1, float x2, float y2, float z2, float dist)
 
void computeCell (int *replBy, const float *xcoord, const float *ycoord, const float *zcoord, const int *coordInBox, int numCoordInBox, float bbx1, float bby1, float bbz1, float bbx2, float bby2, float bbz2, bool optimize, float maxDistanceSqr, int maxCoord, int recurseLevel=0)
 
void boundingBox (const float *const *x, const float *const *y, const float *const *z, const int *c, int n, float *bbx1, float *bby1, float *bbz1, float *bbx2, float *bby2, float *bbz2)
 
int getOctant (float x, float y, float z, float ox, float oy, float oz)
 
void getOctantBounds (int o, float ox, float oy, float oz, float bbx1, float bby1, float bbz1, float bbx2, float bby2, float bbz2, float *bx1, float *by1, float *bz1, float *bx2, float *by2, float *bz2)
 
void computeWorkingLists (int num_coord, int *replyBy, int **src2fil, int **fil2src, int &num_target)
 

Private Attributes

int max_vertices_
 
float delta_
 
bool opt_mem_
 

Member Enumeration Documentation

anonymous enum
private
Enumerator
UNTOUCHED 
REMOVE 
anonymous enum
private
Enumerator
UNCHANGED 
anonymous enum
Enumerator
FIX_ERROR 

Constructor & Destructor Documentation

coFixUsg::coFixUsg ( )
coFixUsg::coFixUsg ( int  max_vertices,
float  delta,
bool  opt_mem = false 
)

Member Function Documentation

void coFixUsg::boundingBox ( const float *const *  x,
const float *const *  y,
const float *const *  z,
const int *  c,
int  n,
float *  bbx1,
float *  bby1,
float *  bbz1,
float *  bbx2,
float *  bby2,
float *  bbz2 
)
private
void coFixUsg::computeCell ( int *  replBy,
const float *  xcoord,
const float *  ycoord,
const float *  zcoord,
const int *  coordInBox,
int  numCoordInBox,
float  bbx1,
float  bby1,
float  bbz1,
float  bbx2,
float  bby2,
float  bbz2,
bool  optimize,
float  maxDistanceSqr,
int  maxCoord,
int  recurseLevel = 0 
)
private
void coFixUsg::computeWorkingLists ( int  num_coord,
int *  replyBy,
int **  src2fil,
int **  fil2src,
int &  num_target 
)
private
int coFixUsg::fixUsg ( const coDistributedObject geo_in,
coDistributedObject **  geo_out,
const char *  geoObjName,
int  num_val,
const coDistributedObject *const *  data_in,
coDistributedObject **  data_out,
const char **  objName 
)
int coFixUsg::fixUsg ( int  num_elem,
int  num_conn,
int  num_point,
const int *  elem_list,
const int *  conn_list,
const int *  type_list,
const float *  xcoord,
const float *  ycoord,
const float *  zcoord,
int &  new_num_elem,
int &  new_num_conn,
int &  new_num_coord,
int **  new_elem_list,
int **  new_conn_list,
int **  new_type_list,
float **  new_xcoord,
float **  new_ycoord,
float **  new_zcoord,
int  num_val,
int *  numComp,
int *  dataSize,
float **  in_x,
float **  in_y,
float **  in_z,
float ***  out_x,
float ***  out_y,
float ***  out_z 
)

create a Replace-List

int coFixUsg::getOctant ( float  x,
float  y,
float  z,
float  ox,
float  oy,
float  oz 
)
private
void coFixUsg::getOctantBounds ( int  o,
float  ox,
float  oy,
float  oz,
float  bbx1,
float  bby1,
float  bbz1,
float  bbx2,
float  bby2,
float  bbz2,
float *  bx1,
float *  by1,
float *  bz1,
float *  bx2,
float *  by2,
float *  bz2 
)
private
bool coFixUsg::isEqual ( float  x1,
float  y1,
float  z1,
float  x2,
float  y2,
float  z2,
float  dist 
)
private
template<class T >
void coFixUsg::mapArray ( const T *  src,
T *  target,
const int *  filtered2source,
int  num_target 
)
template<class T >
void coFixUsg::updateArray ( const T *  src,
T *  target,
const int *  source2filtered,
int  num_target 
)

Member Data Documentation

float covise::coFixUsg::delta_
private
int covise::coFixUsg::max_vertices_
private
bool covise::coFixUsg::opt_mem_
private

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