gmsh-TingyuanDoc  0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
Levelset.h
Go to the documentation of this file.
1 // Gmsh - Copyright (C) 1997-2022 C. Geuzaine, J.-F. Remacle
2 //
3 // See the LICENSE.txt file in the Gmsh root directory for license information.
4 // Please report all issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
5 
6 #ifndef LEVELSET_H
7 #define LEVELSET_H
8 
9 #include "Plugin.h"
10 
12 private:
13  double _invert;
14  void _addElement(int np, int numEdges, int numComp, double xp[12],
15  double yp[12], double zp[12], double valp[12][9],
16  PViewDataList *out, bool firstStep);
17  void _cutAndAddElements(PViewData *vdata, PViewData *wdata, int ent, int ele,
18  int step, int wstep, double x[8], double y[8],
19  double z[8], double levels[8], double scalarValues[8],
20  PViewDataList *out);
21 
22 protected:
23  double _ref[3], _targetError;
26  typedef enum { NONE, PLANE, SPHERE, MAP } ORIENTATION;
28 
29 public:
31  virtual double levelset(double x, double y, double z, double val) const = 0;
32  virtual PView *execute(PView *);
33  void assignSpecificVisibility() const;
34 };
35 
36 #endif
PView
Definition: PView.h:27
GMSH_LevelsetPlugin::MAP
@ MAP
Definition: Levelset.h:26
Plugin.h
GMSH_LevelsetPlugin::_cutAndAddElements
void _cutAndAddElements(PViewData *vdata, PViewData *wdata, int ent, int ele, int step, int wstep, double x[8], double y[8], double z[8], double levels[8], double scalarValues[8], PViewDataList *out)
Definition: Levelset.cpp:374
PViewDataList
Definition: PViewDataList.h:17
GMSH_LevelsetPlugin::PLANE
@ PLANE
Definition: Levelset.h:26
GMSH_LevelsetPlugin::_invert
double _invert
Definition: Levelset.h:13
GMSH_LevelsetPlugin::levelset
virtual double levelset(double x, double y, double z, double val) const =0
GMSH_LevelsetPlugin::_valueView
int _valueView
Definition: Levelset.h:24
GMSH_LevelsetPlugin::_extractVolume
int _extractVolume
Definition: Levelset.h:25
GMSH_LevelsetPlugin::_ref
double _ref[3]
Definition: Levelset.h:23
GMSH_LevelsetPlugin::_valueTimeStep
int _valueTimeStep
Definition: Levelset.h:24
GMSH_LevelsetPlugin::execute
virtual PView * execute(PView *)
Definition: Levelset.cpp:537
GMSH_LevelsetPlugin::_orientation
ORIENTATION _orientation
Definition: Levelset.h:27
GMSH_LevelsetPlugin::ORIENTATION
ORIENTATION
Definition: Levelset.h:26
GMSH_LevelsetPlugin::assignSpecificVisibility
void assignSpecificVisibility() const
Definition: Levelset.cpp:890
GMSH_LevelsetPlugin::_recurLevel
int _recurLevel
Definition: Levelset.h:24
PViewData
Definition: PViewData.h:29
z
const double z
Definition: GaussQuadratureQuad.cpp:56
GMSH_PostPlugin
Definition: Plugin.h:83
GMSH_LevelsetPlugin::SPHERE
@ SPHERE
Definition: Levelset.h:26
GMSH_LevelsetPlugin::_valueIndependent
int _valueIndependent
Definition: Levelset.h:24
GMSH_LevelsetPlugin::GMSH_LevelsetPlugin
GMSH_LevelsetPlugin()
Definition: Levelset.cpp:224
GMSH_LevelsetPlugin::_addElement
void _addElement(int np, int numEdges, int numComp, double xp[12], double yp[12], double zp[12], double valp[12][9], PViewDataList *out, bool firstStep)
Definition: Levelset.cpp:238
GMSH_LevelsetPlugin
Definition: Levelset.h:11
GMSH_LevelsetPlugin::_targetError
double _targetError
Definition: Levelset.h:23
GMSH_LevelsetPlugin::NONE
@ NONE
Definition: Levelset.h:26