implements statistics computation on dihedral angles
This commit is contained in:
parent
6310c2c551
commit
07db041c21
14
src/main.cpp
14
src/main.cpp
@ -120,11 +120,21 @@ void stats_normal_deviation(MyMesh &mesh) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void stats_dihedral_angles(MyMesh &mesh) {
|
||||||
|
mesh.update_normals();
|
||||||
|
for (size_t i = 0; i < mesh.n_halfedges(); i++) {
|
||||||
|
MyMesh::HalfedgeHandle heh = mesh.halfedge_handle(i);
|
||||||
|
std::cout << mesh.calc_dihedral_angle_fast(heh) * 180.0 / PI << " ";
|
||||||
|
}
|
||||||
|
std::cout << std::endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
if (argc != 2 && argc != 3) {
|
if (argc != 2 && argc != 3) {
|
||||||
cerr << "Utilisation : " << argv[0] << " fichier.obj [surface|valence|deviation]" << endl;
|
cerr << "Utilisation : " << argv[0] << " fichier.obj [surface|valence|deviation|dièdre]" << endl;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
MyMesh mesh;
|
MyMesh mesh;
|
||||||
@ -152,6 +162,8 @@ int main(int argc, char *argv[]) {
|
|||||||
stats_n_neighbors(mesh);
|
stats_n_neighbors(mesh);
|
||||||
else if (cmd == "deviation")
|
else if (cmd == "deviation")
|
||||||
stats_normal_deviation(mesh);
|
stats_normal_deviation(mesh);
|
||||||
|
else if (cmd == "dièdre")
|
||||||
|
stats_dihedral_angles(mesh);
|
||||||
else {
|
else {
|
||||||
cerr << "Commande inconnue : " << cmd << endl;
|
cerr << "Commande inconnue : " << cmd << endl;
|
||||||
return 1;
|
return 1;
|
||||||
|
Reference in New Issue
Block a user