rsvs3D  0.0.0
Codes for the c++ implementation of the 3D RSVS
triangulate.hpp File Reference

Provides a triangulation for snake and meshes. More...

#include <vector>
#include "arraystructures.hpp"
#include "mesh.hpp"
#include "snake.hpp"

Go to the source code of this file.

Classes

class  TriStruct< T >
 
class  triarray
 
class  tripointarray
 
class  trisurfarray
 
class  triangulation
 
class  tri2mesh
 
class  triangle
 
class  trianglepoint
 
class  trianglesurf
 

Namespaces

 rsvs3d
 Namespace for general purpose tools of the RSVS project.
 

Functions

void CalculateSnakeVel (snake &snakein)
 
void CalculateSnakeVelRand (snake &snakein)
 
void CalculateSnakeVelUnit (snake &snakein)
 
void CalculateSnakeVelUnitReflect (snake &snakein)
 
void CalculateSnakeVelFast (snake &snakein)
 
void CalculateNoNanSnakeVel (snake &snakein, double deltaStep=0.01)
 
void TriangulateSurface (const surf &surfin, const mesh &meshin, triarray &triangul, tripointarray &trivert, const int typeMesh, int trivertMaxInd)
 
void TriangulateTriSurface (const trianglesurf &surfin, triarray &triangul, tripointarray &trivert, const int typeMesh, int trivertMaxInd)
 
void TriangulateContainer (const mesh &meshin, triangulation &triangleRSVS, const int typeMesh, const std::vector< int > &subList={})
 
void TriangulateSnake (snake &snakein, triangulation &triangleRSVS)
 
void TriangulateMesh (mesh &meshin, triangulation &triangleRSVS)
 
void MeshTriangulation (mesh &meshout, const mesh &meshin, triarray &triangul, tripointarray &trivert)
 
void MaintainTriangulateSnake (triangulation &triangleRSVS)
 
void SnakeSurfaceCentroid_fun (coordvec &coord, const surf &surfin, const mesh &meshin)
 
void HybridSurfaceCentroid_fun (coordvec &coord, const trianglesurf &surfin, const mesh &meshin, const mesh &snakeconn)
 
void Test_stepalgoRSVS (snake &testSnake, triangulation &RSVStri, std::vector< double > &dt, std::vector< int > &isImpact, RSVScalc &calcObj, tecplotfile &outSnake2, double totT)
 
void BuildTriSurfGridSnakeIntersect (triangulation &triangleRSVS)
 
int FollowVertexConnection (int actVert, int prevEdge, const HashedVector< int, int > &edgeSurfInd, const HashedVector< int, int > &vertSurfInd, const snake &snakeRSVS, const mesh &meshRSVS, int &returnIndex, int &returnType, int &nextEdge)
 
int FollowSnaxelDirection (int actSnax, const snake &snakeRSVS, int &returnIndex, int &returnType, int &actEdge)
 
bool FollowSnaxEdgeConnection (int actSnax, int actSurf, int followSnaxEdge, const snake &snakeRSVS, std::vector< bool > &isSnaxEdgeDone, int &returnIndex)
 
mesh TriarrayToMesh (const triangulation &triangul, const triarray &triin)
 
void FlattenBoundaryFaces (mesh &meshin)
 
SurfCentroid SurfaceCentroid_TriangleSurf (const trianglesurf &surfin, const mesh &meshin, const mesh &snakeconn)
 
SurfCentroid SurfaceCentroid_SnakeSurf (const surf &surfin, const mesh &meshin)
 
int Test_snakeRSVS ()
 
int Test_surfcentre ()
 
int Test_snakeRSVS_singlevol ()
 
int Test_MeshOrient ()
 
int Test_RSVSalgo_singlevol (int sparseCuttoff)
 
int Test_RSVSalgo_singlevol_fullmath ()
 
int Test_RSVSalgo_singlevol_sparse ()
 

Variables

static const int rsvs3d::constants::meshtypes::mesh = 1
 
static const int rsvs3d::constants::meshtypes::snake = 2
 
static const int rsvs3d::constants::meshtypes::triangulation = 3
 

Detailed Description

Provides a triangulation for snake and meshes.

This links an active snake and mesh to their triangulated representation needed to compute areas and volumes.

Definition in file triangulate.hpp.