|
MeshKit
1.0
|
#include <assert.h>#include "QslimDecimation.hpp"#include "moab/AdaptiveKDTree.hpp"#include "moab/ReadUtilIface.hpp"#include "Mat4.h"#include "defs.h"#include "quadrics.h"#include <time.h>#include <map>#include <limits>#include "primitives.h"#include "Heap.hpp"
Go to the source code of this file.
Classes | |
| class | pair_info |
| class | vert_info |
Namespaces | |
| namespace | MeshKit |
Defines | |
| #define | MESH_INVERSION_PENALTY 1e9 |
Typedefs | |
| typedef buffer< pair_info * > | pair_buffer |
Functions | |
| int | uniqID (moab::EntityHandle v) |
| int | ehIsValid (moab::EntityHandle v) |
| static vert_info & | vertex_info (moab::EntityHandle v) |
| static bool | check_for_pair (moab::EntityHandle v0, moab::EntityHandle v1) |
| static pair_info * | new_pair (moab::EntityHandle v0, moab::EntityHandle v1) |
| static void | delete_pair (pair_info *pair) |
| static int | predict_face (moab::EntityHandle tria, moab::EntityHandle v1, moab::EntityHandle v2, Vec3 &vnew, Vec3 &f1, Vec3 &f2, Vec3 &f3) |
| static double | pair_mesh_positivity (moab::EntityHandle v1, moab::EntityHandle v2, Vec3 &vnew) |
| static double | pair_mesh_topology (moab::EntityHandle v1, moab::EntityHandle v2) |
| static double | pair_mesh_penalty (moab::EntityHandle v1, moab::EntityHandle v2, Vec3 &vnew) |
| static void | compute_pair_info (pair_info *pair) |
| void | recomputeChangedPairsCost (std::vector< moab::EntityHandle > &changed, moab::EntityHandle v0) |
| static void | do_contract (pair_info *pair) |
| bool | decimate_quadric (moab::EntityHandle v, Mat4 &Q) |
| void | decimate_contract () |
| double | decimate_error (moab::EntityHandle v) |
| double | decimate_min_error () |
Variables | |
| moab::Interface * | mb |
| moab::Tag | uniqIDtag |
| moab::Tag | validTag |
| moab::Tag | costTag |
| moab::Tag | planeDataTag |
| moab::Range | verts |
| moab::Range | triangles |
| moab::Range | edgs |
| QslimOptions | opts |
| moab::EntityHandle | iniSet |
| static Heap * | heap |
| static array< vert_info > | vinfo |
| static double | proximity_limit |
| int | validFaceCount |
| int | validVertCount |
| #define MESH_INVERSION_PENALTY 1e9 |
Definition at line 227 of file QslimDecimation.cpp.
| typedef buffer<pair_info *> pair_buffer |
Definition at line 85 of file QslimDecimation.cpp.
| static bool check_for_pair | ( | moab::EntityHandle | v0, |
| moab::EntityHandle | v1 | ||
| ) | [static] |
Definition at line 125 of file QslimDecimation.cpp.
| static void compute_pair_info | ( | pair_info * | pair | ) | [static] |
Definition at line 393 of file QslimDecimation.cpp.
| void decimate_contract | ( | ) |
Definition at line 595 of file QslimDecimation.cpp.
| double decimate_error | ( | moab::EntityHandle | v | ) |
Definition at line 627 of file QslimDecimation.cpp.
| double decimate_min_error | ( | ) |
Definition at line 638 of file QslimDecimation.cpp.
| bool decimate_quadric | ( | moab::EntityHandle | v, |
| Mat4 & | Q | ||
| ) |
Definition at line 585 of file QslimDecimation.cpp.
| static void delete_pair | ( | pair_info * | pair | ) | [static] |
Definition at line 150 of file QslimDecimation.cpp.
| static void do_contract | ( | pair_info * | pair | ) | [static] |
Definition at line 477 of file QslimDecimation.cpp.
| int ehIsValid | ( | moab::EntityHandle | v | ) |
Definition at line 52 of file QslimDecimation.cpp.
Definition at line 137 of file QslimDecimation.cpp.
| static double pair_mesh_penalty | ( | moab::EntityHandle | v1, |
| moab::EntityHandle | v2, | ||
| Vec3 & | vnew | ||
| ) | [static] |
Definition at line 351 of file QslimDecimation.cpp.
| static double pair_mesh_positivity | ( | moab::EntityHandle | v1, |
| moab::EntityHandle | v2, | ||
| Vec3 & | vnew | ||
| ) | [static] |
Definition at line 230 of file QslimDecimation.cpp.
| static double pair_mesh_topology | ( | moab::EntityHandle | v1, |
| moab::EntityHandle | v2 | ||
| ) | [static] |
triangles connected to the 3 nodes
Definition at line 293 of file QslimDecimation.cpp.
| static int predict_face | ( | moab::EntityHandle | tria, |
| moab::EntityHandle | v1, | ||
| moab::EntityHandle | v2, | ||
| Vec3 & | vnew, | ||
| Vec3 & | f1, | ||
| Vec3 & | f2, | ||
| Vec3 & | f3 | ||
| ) | [static] |
Definition at line 183 of file QslimDecimation.cpp.
| void recomputeChangedPairsCost | ( | std::vector< moab::EntityHandle > & | changed, |
| moab::EntityHandle | v0 | ||
| ) |
Definition at line 441 of file QslimDecimation.cpp.
| int uniqID | ( | moab::EntityHandle | v | ) |
Definition at line 43 of file QslimDecimation.cpp.
| static vert_info& vertex_info | ( | moab::EntityHandle | v | ) | [inline, static] |
Definition at line 115 of file QslimDecimation.cpp.
| moab::Tag costTag |
Definition at line 30 of file QslimDecimation.cpp.
| moab::Range edgs |
Definition at line 39 of file QslimDecimation.cpp.
Definition at line 103 of file QslimDecimation.cpp.
| moab::EntityHandle iniSet |
Definition at line 41 of file QslimDecimation.cpp.
| moab::Interface* mb |
Definition at line 26 of file QslimDecimation.cpp.
Definition at line 40 of file QslimDecimation.cpp.
| moab::Tag planeDataTag |
Definition at line 35 of file QslimDecimation.cpp.
double proximity_limit [static] |
Definition at line 105 of file QslimDecimation.cpp.
| moab::Range triangles |
Definition at line 38 of file QslimDecimation.cpp.
| moab::Tag uniqIDtag |
Definition at line 27 of file QslimDecimation.cpp.
| int validFaceCount |
Definition at line 107 of file QslimDecimation.cpp.
| moab::Tag validTag |
Definition at line 28 of file QslimDecimation.cpp.
| int validVertCount |
Definition at line 108 of file QslimDecimation.cpp.
| moab::Range verts |
Definition at line 37 of file QslimDecimation.cpp.
Definition at line 104 of file QslimDecimation.cpp.