|
Wildmeshing Toolkit
|
Public Member Functions | |
| VertexSmoother (LocalOperations lo) | |
| void | smooth () |
| void | smoothSingle () |
| Smooth all vertices except for deleted, locked, bbox, and surface vertices. | |
| bool | smoothSingleVertex (int v_id, bool is_cal_energy) |
| void | smoothSurface () |
| Smooth all surface vertices except for deleted, and locked vertices. | |
| bool | NewtonsMethod (const std::vector< int > &t_ids, const std::vector< std::array< int, 4 > > &new_tets, int v_id, Vector3d &p) |
| bool | NewtonsUpdate (const std::vector< int > &t_ids, int v_id, double &energy, Eigen::Vector3d &J, Eigen::Matrix3d &H, Eigen::Vector3d &X0) |
| double | getNewEnergy (const std::vector< int > &t_ids) |
Public Member Functions inherited from wmtk::components::tetwild::orig::LocalOperations | |
| LocalOperations (std::vector< TetVertex > &t_vs, std::vector< std::array< int, 4 > > &ts, std::vector< std::array< int, 4 > > &is_sf_fs, std::vector< bool > &v_is_rm, std::vector< bool > &t_is_rm, std::vector< TetQuality > &tet_qs, const SampleEnvelope &geo_tree, const SampleEnvelope &b_t, const Args &ar, State &st) | |
| void | outputInfo (int op_type, double time, bool is_log=true) |
| void | calTetQualities (const std::vector< std::array< int, 4 > > &new_tets, std::vector< TetQuality > &tet_qs) |
| double | calEdgeLength (int v1_id, int v2_id) |
| void | calTetQuality_AMIPS (const std::array< int, 4 > &tet, TetQuality &t_quality) |
| bool | isFlip (const std::vector< std::array< int, 4 > > &new_tets) |
| bool | isTetFlip (const std::array< int, 4 > &t) |
| bool | isTetFlip (int t_id) |
| void | getAvgMaxEnergy (double &avg_tq, double &max_tq) |
| double | getMaxEnergy () |
| void | getCheckQuality (const std::vector< TetQuality > &tet_qs, TetQuality &tq) |
| void | getCheckQuality (const std::vector< int > &t_ids, TetQuality &tq) |
| bool | isEdgeOnSurface (int v1_id, int v2_id) |
| bool | isEdgeOnBbox (int v1_id, int v2_id) |
| bool | isEdgeOnSurface (int v1_id, int v2_id, const std::vector< int > &t_ids) |
| bool | isEdgeOnBbox (int v1_id, int v2_id, const std::vector< int > &t_ids) |
| bool | isEdgeOnBoundary (int v1_id, int v2_id) |
| bool | isFaceOutEnvelop (const std::array< Vector3d, 3 > &tri) |
| bool | isPointOutEnvelop (const Vector3d &p) |
| bool | isPointOutBoundaryEnvelop (const Vector3d &p) |
| void | getFaceConnTets (int v1_id, int v2_id, int v3_id, std::vector< int > &t_ids) |
| bool | isIsolated (int v_id) |
| bool | isBoundaryPoint (int v_id) |
| bool | isLocked_ui (const std::array< int, 2 > &e) |
| bool | isTetLocked_ui (int tid) |
Public Attributes | |
| int | ts |
| std::vector< int > | tets_tss |
| std::vector< int > | tet_vertices_tss |
| int | id_value_e = 0 |
| int | id_value_j = 1 |
| int | id_value_h = 2 |
| int | id_solve = 3 |
| int | id_aabb = 4 |
| int | id_project = 5 |
| int | id_round = 6 |
| std::array< double, 7 > | breakdown_timing = {{0, 0, 0, 0, 0, 0, 0}} |
| std::array< std::string, 7 > | breakdown_name |
| igl::Timer | igl_timer |
Public Attributes inherited from wmtk::components::tetwild::orig::LocalOperations | |
| const Args & | args |
| State & | state |
| std::vector< TetVertex > & | tet_vertices |
| std::vector< std::array< int, 4 > > & | tets |
| std::vector< std::array< int, 4 > > & | is_surface_fs |
| std::vector< bool > & | v_is_removed |
| std::vector< bool > & | t_is_removed |
| std::vector< TetQuality > & | tet_qualities |
| const SampleEnvelope & | geo_sf_tree |
| const SampleEnvelope & | geo_b_tree |
| int | counter = 0 |
| int | suc_counter = 0 |
| igl::Timer | igl_timer0 |
| int | id_sampling = 0 |
| int | id_aabb = 1 |
| int | mid_id = 0 |
| void wmtk::components::tetwild::orig::VertexSmoother::smoothSingle | ( | ) |
Smooth all vertices except for deleted, locked, bbox, and surface vertices.
try to round the vertex
check if should use exact smoothing
update timestamps
| bool wmtk::components::tetwild::orig::VertexSmoother::smoothSingleVertex | ( | int | v_id, |
| bool | is_cal_energy | ||
| ) |
try to round the vertex
check if should use exact smoothing
| void wmtk::components::tetwild::orig::VertexSmoother::smoothSurface | ( | ) |
Smooth all surface vertices except for deleted, and locked vertices.
find one-ring surface faces
check if tris outside the envelop
real update update timestamps
| std::array<std::string, 7> wmtk::components::tetwild::orig::VertexSmoother::breakdown_name |