Skip to content
Snippets Groups Projects
Commit ecd7ff33 authored by Jonathan Lambrechts's avatar Jonathan Lambrechts
Browse files

gmsh : bindings for mesh optimizations

parent 937f12a1
No related branches found
No related tags found
No related merge requests found
...@@ -31,6 +31,8 @@ ...@@ -31,6 +31,8 @@
#include "polynomialBasis.h" #include "polynomialBasis.h"
#include "Gauss.h" #include "Gauss.h"
#include "meshPartitionOptions.h" #include "meshPartitionOptions.h"
#include "meshGFaceOptimize.h"
#include "Generator.h"
#include "linearSystemCSR.h" #include "linearSystemCSR.h"
#include "elasticitySolver.h" #include "elasticitySolver.h"
#include "meshGFaceLloyd.h" #include "meshGFaceLloyd.h"
...@@ -133,6 +135,8 @@ namespace std { ...@@ -133,6 +135,8 @@ namespace std {
%include "functionPython.h" %include "functionPython.h"
%include "meshGFaceLloyd.h" %include "meshGFaceLloyd.h"
%include "DefaultOptions.h" %include "DefaultOptions.h"
%include "meshGFaceOptimize.h"
%include "Generator.h"
#if defined(HAVE_FLTK) #if defined(HAVE_FLTK)
%include "FlGui.h" %include "FlGui.h"
#endif #endif
...@@ -57,7 +57,9 @@ void buildListOfEdgeAngle(e2t_cont adj, std::vector<edge_angle> &edges_detected, ...@@ -57,7 +57,9 @@ void buildListOfEdgeAngle(e2t_cont adj, std::vector<edge_angle> &edges_detected,
void buildEdgeToElements(std::vector<MElement*> &tris, e2t_cont &adj); void buildEdgeToElements(std::vector<MElement*> &tris, e2t_cont &adj);
void laplaceSmoothing(GFace *gf, int niter=1); void laplaceSmoothing(GFace *gf, int niter=1);
/*
void edgeSwappingLawson(GFace *gf); void edgeSwappingLawson(GFace *gf);
*/
enum swapCriterion {SWCR_DEL, SWCR_QUAL, SWCR_NORM, SWCR_CLOSE}; enum swapCriterion {SWCR_DEL, SWCR_QUAL, SWCR_NORM, SWCR_CLOSE};
enum splitCriterion {SPCR_CLOSE, SPCR_QUAL, SPCR_ALLWAYS}; enum splitCriterion {SPCR_CLOSE, SPCR_QUAL, SPCR_ALLWAYS};
...@@ -69,20 +71,20 @@ int edgeSwapPass(GFace *gf, ...@@ -69,20 +71,20 @@ int edgeSwapPass(GFace *gf,
const std::vector<double> &Vs, const std::vector<double> &Vs,
const std::vector<double> &vSizes, const std::vector<double> &vSizes,
const std::vector<double> &vSizesBGM); const std::vector<double> &vSizesBGM);
int edgeSplitPass(double maxLC, GFace *gf, /*int edgeSplitPass(double maxLC, GFace *gf,
std::set<MTri3*, compareTri3Ptr> &allTris, std::set<MTri3*, compareTri3Ptr> &allTris,
const splitCriterion &cr, const splitCriterion &cr,
std::vector<double> &Us, std::vector<double> &Us,
std::vector<double> &Vs, std::vector<double> &Vs,
std::vector<double> &vSizes , std::vector<double> &vSizes ,
std::vector<double> &vSizesBGM); std::vector<double> &vSizesBGM);
void removeFourTrianglesNodes(GFace *gf, bool replace_by_quads);
int edgeCollapsePass(double minLC, GFace *gf, int edgeCollapsePass(double minLC, GFace *gf,
std::set<MTri3*, compareTri3Ptr> &allTris, std::set<MTri3*, compareTri3Ptr> &allTris,
std::vector<double> &Us, std::vector<double> &Us,
std::vector<double> &Vs, std::vector<double> &Vs,
std::vector<double> &vSizes , std::vector<double> &vSizes ,
std::vector<double> &vSizesBGM); std::vector<double> &vSizesBGM);*/
void removeFourTrianglesNodes(GFace *gf, bool replace_by_quads);
void buildMeshGenerationDataStructures(GFace *gf, void buildMeshGenerationDataStructures(GFace *gf,
std::set<MTri3*, compareTri3Ptr> &AllTris, std::set<MTri3*, compareTri3Ptr> &AllTris,
std::vector<double> &vSizes, std::vector<double> &vSizes,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment