Skip to content
Snippets Groups Projects
Select Git revision
  • ea3bf6a6e7ca693887934ad93881d1d10294046d
  • master default
  • cgnsUnstructured
  • partitioning
  • poppler
  • HighOrderBLCurving
  • gmsh_3_0_4
  • gmsh_3_0_3
  • gmsh_3_0_2
  • gmsh_3_0_1
  • gmsh_3_0_0
  • gmsh_2_16_0
  • gmsh_2_15_0
  • gmsh_2_14_1
  • gmsh_2_14_0
  • gmsh_2_13_2
  • gmsh_2_13_1
  • gmsh_2_12_0
  • gmsh_2_11_0
  • gmsh_2_10_1
  • gmsh_2_10_0
  • gmsh_2_9_3
  • gmsh_2_9_2
  • gmsh_2_9_1
  • gmsh_2_9_0
  • gmsh_2_8_6
26 results

meshGRegionLocalMeshMod.h

Blame
  • Forked from gmsh / gmsh
    13375 commits behind the upstream repository.
    Christophe Geuzaine's avatar
    Christophe Geuzaine authored
    - fixed MED node ordering
    - polished 64 bit Cocoa Mac OS X FLTK version
    - updated copyright
    
    85cf7e8a
    History
    meshGRegionLocalMeshMod.h 1.47 KiB
    // Gmsh - Copyright (C) 1997-2011 C. Geuzaine, J.-F. Remacle
    //
    // See the LICENSE.txt file for license information. Please report all
    // bugs and problems to <gmsh@geuz.org>.
    
    #ifndef _MESH_GREGION_LOCAL_MESH_MOD_H_
    #define _MESH_GREGION_LOCAL_MESH_MOD_H_
    
    #include "meshGRegionDelaunayInsertion.h"
    #include "qualityMeasures.h"
    
    // Local mesh modification operators. Those operators only apply to
    // the "bulk" of the mesh and cannot be applied to boudnaries.  I'm
    // working on it
    
    enum localMeshModAction {GMSH_DOIT, GMSH_EVALONLY};
    
    bool edgeSwap(std::vector<MTet4*> &newTets, MTet4 *tet, 
                  int iLocalEdge, const qualityMeasure4Tet &cr);
    
    bool faceSwap(std::vector<MTet4*> &newTets, MTet4 *tet, 
                  int iLocalFace, const qualityMeasure4Tet &cr);
    
    bool smoothVertex(MTet4 *t, int iLocalVertex,
                      const qualityMeasure4Tet &cr);
    
    bool smoothVertexOptimize(MTet4 *t, int iVertex,
                              const qualityMeasure4Tet &cr);
    
    bool collapseVertex(std::vector<MTet4*> &newTets, MTet4 *t, 
                        int iVertex, int iTarget,
                        const qualityMeasure4Tet &cr,
                        const localMeshModAction = GMSH_DOIT,
                        double *result = 0);
    
    bool egeSplit(std::vector<MTet4*> &newTets, MTet4 *tet,
                  MVertex *newVertex, int iLocalEdge,
                  const qualityMeasure4Tet &cr);
    
    bool sliverRemoval(std::vector<MTet4*> &newTets, MTet4 *t, 
                       const qualityMeasure4Tet &cr);
    
    #endif