Starts the analysis.
52{
53 MeshLib::Mesh const& mesh(
54 *
_mesh_vec[this->meshListBox->currentIndex()].get());
55
56 MeshLib::NodeSearch ns(mesh);
57 ns.searchUnused();
58 const std::vector<std::size_t> unusedNodesIdx(ns.getSearchedNodeIDs());
59 MeshToolsLib::MeshRevision rev(const_cast<MeshLib::Mesh&>(mesh));
60 std::vector<std::size_t> const& collapsibleNodeIds(rev.collapseNodeIndices(
61 this->collapsibleNodesThreshold->text().toDouble() +
62 std::numeric_limits<double>::epsilon()));
63 this->nodesGroupBox->setTitle(
64 "Nodes (out of " + QString::number(mesh.getNumberOfNodes()) + ")");
66
67 const std::vector<ElementErrorCode> element_error_codes(
69 mesh,
70 this->zeroVolumeThreshold->text().toDouble() +
71 std::numeric_limits<double>::epsilon()));
72 this->elementsGroupBox->setTitle(
73 "Elements (out of " + QString::number(mesh.getNumberOfElements()) +
74 ")");
76
78 if (n_holes > 0)
79 {
80 this->meshHoleOutputLabel->setText(
81 "<strong>" + QString::number(n_holes) +
82 " hole(s) found within the mesh</strong>");
83 }
84}
void elementsMsgOutput(const std::vector< ElementErrorCode > &error_codes)
Prepares the output for the node message window.
void nodesMsgOutput(std::vector< std::size_t > const &node_ids, std::vector< std::size_t > const &collapsibleNodeIds)
Prepares the output for the node message window.