SCIRun  5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations | Functions | Variables
SCIRunAlgo Namespace Reference

Datatypes that the algorithm uses. More...

Classes

class  CleanupTetMeshAlgo
 
class  RemoveUnusedNodesAlgo
 
class  ClipMeshByIsovalueAlgoTet
 
class  ClipMeshByIsovalueAlgoTri
 
class  ClipMeshByIsovalueAlgoHex
 
class  ClipMeshByIsovalueAlgo
 
class  ClipMeshBySelectionAlgo
 
class  CollectPointCloudsAlgo
 
class  CompareFieldsAlgo
 
class  SimilarMeshesAlgo
 
class  ConvertLatVolDataFromElemToNodeAlgo
 
class  ConvertLatVolDataFromNodeToElemAlgo
 
class  ConvertMeshToTetVolMeshAlgo
 
class  ConvertMeshToUnstructuredMeshAlgo
 
class  CreateMeshFromNrrdAlgo
 
class  CalculateInsideWhichFieldAlgo
 
class  CalculateIsInsideFieldAlgo
 
class  GetDomainStructureAlgo
 
class  MatchDomainLabelsAlgo
 
class  SplitNodesByDomainAlgo
 
class  CalculateFieldDataMetricAlgo
 
class  CalculateLatVolGradientsAtNodesAlgo
 
class  CalculateVectorMagnitudesAlgo
 
class  ConvertFieldDataTypeAlgo
 
class  ConvertIndicesToFieldDataAlgo
 
class  ConvertMappingMatrixToFieldDataAlgo
 
class  SetFieldDataToConstantValueAlgo
 
class  SmoothVecFieldMedianAlgo
 
class  DilateFieldDataAlgo
 
class  ErodeFieldDataAlgo
 
class  TriSurfPhaseFilterAlgo
 
class  FindClosestNodeAlgo
 
class  FindClosestNodeByValueAlgo
 
class  FindClosestNodesFromPointFieldPAlgo
 
class  FindClosestNodesFromPointFieldAlgo
 
class  MapFieldDataFromSourceToDestinationClosestDataPAlgo
 
class  MapFieldDataFromSourceToDestinationSingleDestinationPAlgo
 
class  MapFieldDataFromSourceToDestinationInterpolatedDataPAlgo
 
class  MapFieldDataFromSourceToDestinationAlgo
 
class  MapFromPointFieldPAlgo
 
class  MapFromPointFieldAlgo
 
class  MarchingCubesAlgoP
 
class  MarchingCubesAlgo
 
class  MedialAxisAlgo
 
class  MedialAxisP
 
class  MedialAxis2Algo
 
class  AppendFieldsAlgo
 
class  FlipSurfaceNormalsAlgo
 
class  GetMeshQualityFieldAlgo
 
class  GetSurfaceElemNormalsAlgo
 
class  GetSurfaceNodeNormalsAlgo
 
class  CalculateMeshCenterAlgo
 
class  CalculateMeshConnectorAlgo
 
class  GetBoundingBoxAlgo
 
class  GetCentroidsAlgo
 
class  SortSizes
 
class  AscSortSizes
 
class  SplitByConnectedRegionAlgo
 
class  RefineMeshQuadSurfAlgoV
 
class  RefineMeshHexVolAlgoV
 
class  RefineMeshAlgo
 
class  RegisterWithCorrespondencesAlgo
 
class  PadRegularMeshAlgo
 
class  GeneratePointSamplesFromFieldAlgoF
 
class  GeneratePointSamplesFromFieldAlgo
 
class  GenerateStreamLinesAlgoP
 
class  GenerateStreamLinesAccAlgo
 
class  GenerateStreamLinesAlgo
 
class  StreamLineIntegrators
 
class  InterfaceWithTetGenAlgo
 
class  TracePointsAlgo
 
class  ConvertMeshCoordinateSystemAlgo
 
class  GeneratePolarProjectionAlgo
 
class  GeneratePolarProjectionImageAlgo
 
class  TransformMeshWithTransformAlgo
 
class  TransformPlanarMeshAlgo
 
struct  IndexHash
 
class  BuildFESurfRHSAlgo
 
class  FEMVolRHSBuilder
 
class  BuildFEVolRHSPrivateData
 
class  BuildFEVolRHSAlgo
 
class  BuildFEGridMappingAlgo
 
class  BuildNodeLinkAlgo
 
class  LinkElement
 
class  DefinePeriodicBoundariesAlgo
 
class  AddKnownsToLinearSystemAlgo
 
class  CalculateProfile
 Samples image data surrounding mesh generated from segmentation. More...
 

Typedefs

typedef LockingHandle
< SearchGridT
< SCIRun::index_type > > 
SearchGridHandle
 

Enumerations

enum  {
  UNKNOWN =0, UNSTRUCTURED =1, STRUCTURED =2, IRREGULAR =4,
  REGULAR =8
}
 

Functions

bool ConvertHexVolToTetVolV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
bool ConvertLatVolToTetVolV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
bool StructuredCreateMeshFromNrrdAlgo (AlgoBase *algo, FieldHandle &fHandle, NrrdDataHandle pointsH, size_type idim, size_type jdim, size_type kdim)
 
bool UnstructuredCreateMeshFromNrrdAlgo (AlgoBase *algo, FieldHandle &fHandle, NrrdDataHandle pointsH, NrrdDataHandle connectH, size_type nconnections, int which)
 
template<class DATA >
bool DilateFieldDataNodeV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
template<class DATA >
bool DilateFieldDataElemV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
template<class DATA >
bool ErodeFieldDataNodeV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
template<class DATA >
bool ErodeFieldDataElemV (AlgoBase *algo, FieldHandle input, FieldHandle &output)
 
bool find_second_closest_elem (VMesh *tsm, SearchGridHandle elem_grid, double &rdist, Point &rloc, VMesh::coords_type &rcoords, VMesh::Elem::index_type &relem, const Point &p, VMesh::Elem::index_type &qelem, const Point &qloc, const Vector &pqdir, double pqdist, double diffdist)
 
bool RefineMeshTetVolAlgoV (AlgoBase *algo, FieldHandle input, FieldHandle &output, std::string select, double isoval)
 
bool RefineMeshCurveAlgoV (AlgoBase *algo, FieldHandle input, FieldHandle &output, std::string select, double isoval)
 
bool RefineMeshTriSurfAlgoV (AlgoBase *algo, FieldHandle input, FieldHandle &output, std::string select, double isoval)
 
void CleanupStreamLinePoints (const std::vector< Point > &input, std::vector< Point > &output, double e2)
 
bool GenerateEdgeProjection (VMesh *vmesh, VMesh::Node::index_type start_node, Vector normal, Vector axis, double maxdist, VMesh::Node::index_type final_node, Point &fpoint, double &cum_dist)
 
bool operator== (const LinkElement &s1, const LinkElement &s2)
 
bool operator< (const LinkElement &s1, const LinkElement &s2)
 

Variables

int tet_permute_table [15][4]
 
int tri_permute_table [7][3]
 

Detailed Description

Datatypes that the algorithm uses.

For mapping matrices.

Class definition of this one.

Base class for algorithm for Windows support

Need to find out what type of field we are dealing with

STL classes needed

Todo:
: this was used by the TracePoints module, which

Typedef Documentation

Enumeration Type Documentation

anonymous enum
Enumerator
UNKNOWN 
UNSTRUCTURED 
STRUCTURED 
IRREGULAR 
REGULAR 

Function Documentation

void SCIRunAlgo::CleanupStreamLinePoints ( const std::vector< Point > &  input,
std::vector< Point > &  output,
double  e2 
)
bool ConvertHexVolToTetVolV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)

Make sure that get_neighbors works with elements

For checker board ordering

Add one type of ordering

Add the other type of ordering

Make sure that get_neighbors works with elements

For checker board ordering

Add one type of ordering

Add the other type of ordering

bool ConvertLatVolToTetVolV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)
bool DilateFieldDataElemV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)

Create output field

Create output field

bool DilateFieldDataNodeV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)

Create output field

Create output field

bool ErodeFieldDataElemV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)

Create output field

Create output field

bool ErodeFieldDataNodeV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output 
)

Create output field

Create output field

bool SCIRunAlgo::find_second_closest_elem ( VMesh *  tsm,
SearchGridHandle  elem_grid,
double &  rdist,
Point &  rloc,
VMesh::coords_type &  rcoords,
VMesh::Elem::index_type &  relem,
const Point &  p,
VMesh::Elem::index_type &  qelem,
const Point &  qloc,
const Vector &  pqdir,
double  pqdist,
double  diffdist 
)

If there are no elements we cannot find the closest one

We need to do a full shell without any elements that are closer to make sure there no closer elements in neighboring searchgrid cells

bool SCISHARE GenerateEdgeProjection ( VMesh *  vmesh,
VMesh::Node::index_type  start_node,
Vector  normal,
Vector  axis,
double  maxdist,
VMesh::Node::index_type  final_node,
Point &  fpoint,
double &  cum_dist 
)
bool SCIRunAlgo::operator< ( const LinkElement &  s1,
const LinkElement &  s2 
)
inline
bool SCIRunAlgo::operator== ( const LinkElement &  s1,
const LinkElement &  s2 
)
inline
bool SCIRunAlgo::RefineMeshCurveAlgoV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output,
std::string  select,
double  isoval 
)

Obtain information on what type of input field we have

Alter the input so it will become a QuadSurf

bool SCIRunAlgo::RefineMeshTetVolAlgoV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output,
std::string  select,
double  isoval 
)

Obtain information on what type of input field we have

Alter the input so it will become a tetvol

Create the output field

bool SCIRunAlgo::RefineMeshTriSurfAlgoV ( AlgoBase *  algo,
FieldHandle  input,
FieldHandle &  output,
std::string  select,
double  isoval 
)

Obtain information on what type of input field we have

Alter the input so it will become a QuadSurf

bool SCIRunAlgo::StructuredCreateMeshFromNrrdAlgo ( AlgoBase *  algo,
FieldHandle &  fHandle,
NrrdDataHandle  pointsH,
size_type  idim,
size_type  jdim,
size_type  kdim 
)
bool SCIRunAlgo::UnstructuredCreateMeshFromNrrdAlgo ( AlgoBase *  algo,
FieldHandle &  fHandle,
NrrdDataHandle  pointsH,
NrrdDataHandle  connectH,
size_type  nconnections,
int  which 
)

Variable Documentation

int tet_permute_table[15][4]
Initial value:
= {
{ 0, 0, 0, 0 },
{ 3, 0, 2, 1 },
{ 2, 3, 0, 1 },
{ 0, 1, 2, 3 },
{ 1, 2, 0, 3 },
{ 0, 2, 3, 1 },
{ 0, 3, 1, 2 },
{ 0, 1, 2, 3 },
{ 0, 1, 2, 3 },
{ 2, 1, 3, 0 },
{ 3, 1, 0, 2 },
{ 1, 2, 0, 3 },
{ 3, 2, 1, 0 },
{ 2, 3, 0, 1 },
{ 3, 0, 2, 1 },
}
int tri_permute_table[7][3]
Initial value:
= {
{ 0, 0, 0 },
{ 2, 0, 1 },
{ 1, 2, 0 },
{ 0, 1, 2 },
{ 0, 1, 2 },
{ 1, 2, 0 },
{ 2, 0, 1 },
}