TexGen
Functions | Variables
OctreeVoxelMesh.cpp File Reference
#include "PrecompiledHeaders.h"
#include "OctreeVoxelMesh.h"
#include "TexGen.h"
#include "PeriodicBoundaries.h"
#include <iterator>
#include <string>
#include <algorithm>
Include dependency graph for OctreeVoxelMesh.cpp:

Go to the source code of this file.

Functions

int my_comparison (double x, double y)
 
static int lnodes_decode2 (p4est_lnodes_code_t face_code, int hanging_corner[P4EST_CHILDREN])
 
int duplicatedHangingNode (double vxyz[3], double hang_coord[8][3], int hang_nums[8])
 
pair< int, int > most_common (vector< int > v)
 
vector< int > GetFaceIndices (CMesh::ELEMENT_TYPE ElemType, const set< int > &NodeIndices)
 
int GetFaceIndex (CMesh::ELEMENT_TYPE ElemType, const set< int > &NodeIndices)
 
set< int > GetCommonIndices (const vector< int > &SurfIndices, const vector< int > &VolIndices)
 

Variables

static const int corner_num_hanging [P4EST_CHILDREN]
 
static const int zero = 0
 
static const int ones = P4EST_CHILDREN - 1
 
static const int * corner_to_hanging [P4EST_CHILDREN]
 
const int p8est_face_corners [6][4]
 
const int p8est_edge_corners [12][2]
 
int g_XVoxels
 
int g_YVoxels
 
int g_ZVoxels
 

Function Documentation

◆ duplicatedHangingNode()

int duplicatedHangingNode ( double  vxyz[3],
double  hang_coord[8][3],
int  hang_nums[8] 
)

Definition at line 124 of file OctreeVoxelMesh.cpp.

References my_comparison().

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes().

◆ GetCommonIndices()

set< int > GetCommonIndices ( const vector< int > &  SurfIndices,
const vector< int > &  VolIndices 
)

Definition at line 308 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::OutputSurfaces().

◆ GetFaceIndex()

int GetFaceIndex ( CMesh::ELEMENT_TYPE  ElemType,
const set< int > &  NodeIndices 
)

Definition at line 284 of file OctreeVoxelMesh.cpp.

References TexGen::CMesh::HEX.

◆ GetFaceIndices()

vector< int > GetFaceIndices ( CMesh::ELEMENT_TYPE  ElemType,
const set< int > &  NodeIndices 
)

Definition at line 245 of file OctreeVoxelMesh.cpp.

◆ lnodes_decode2()

static int lnodes_decode2 ( p4est_lnodes_code_t  face_code,
int  hanging_corner[P4EST_CHILDREN] 
)
static

Definition at line 98 of file OctreeVoxelMesh.cpp.

References ones.

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes().

◆ most_common()

pair< int, int > most_common ( vector< int >  v)

◆ my_comparison()

int my_comparison ( double  x,
double  y 
)

Variable Documentation

◆ corner_num_hanging

const int corner_num_hanging[P4EST_CHILDREN]
static
Initial value:
=
{ 1, 2, 2, 1 }

Definition at line 33 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::storeHangingNode().

◆ corner_to_hanging

const int* corner_to_hanging[P4EST_CHILDREN]
static

◆ g_XVoxels

int g_XVoxels

◆ g_YVoxels

int g_YVoxels

◆ g_ZVoxels

int g_ZVoxels

◆ ones

const int ones = P4EST_CHILDREN - 1
static

One bit per dimension.

Definition at line 42 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes(), and lnodes_decode2().

◆ p8est_edge_corners

const int p8est_edge_corners[12][2]
Initial value:
=
{{ 0, 1 },
{ 2, 3 },
{ 4, 5 },
{ 6, 7 },
{ 0, 2 },
{ 1, 3 },
{ 4, 6 },
{ 5, 7 },
{ 0, 4 },
{ 1, 5 },
{ 2, 6 },
{ 3, 7 }}

Definition at line 54 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes().

◆ p8est_face_corners

const int p8est_face_corners[6][4]
Initial value:
=
{{ 0, 2, 4, 6 },
{ 1, 3, 5, 7 },
{ 0, 1, 4, 5 },
{ 2, 3, 6, 7 },
{ 0, 1, 2, 3 },
{ 4, 5, 6, 7 }}

For each node i of the reference quadrant, corner_num_hanging[i] many.

Definition at line 47 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes().

◆ zero

const int zero = 0
static

Constant zero.

Definition at line 41 of file OctreeVoxelMesh.cpp.

Referenced by TexGen::COctreeVoxelMesh::ConvertOctreeToNodes().