#include <gudhi/GIC.h>
#include <string>
#include <vector>
void usage(int nbArgs, char *const progName) {
std::cerr << "Error: Number of arguments (" << nbArgs << ") is not correct\n";
std::cerr << "Usage: " << progName << " filename.off function [-v] \n";
std::cerr << " i.e.: " << progName << " ../../data/points/COIL_database/lucky_cat.off "
"../../data/points/COIL_database/lucky_cat_PCA1 -v \n";
exit(-1);
}
int main(int argc, char **argv) {
if ((argc != 3) && (argc != 4)) usage(argc, argv[0]);
using Point = std::vector<float>;
std::string off_file_name(argv[1]);
std::string func_file_name = argv[2];
bool verb = 0;
if (argc == 4) verb = 1;
if (!check) {
std::clog << "Incorrect OFF file." << std::endl;
} else {
if (verb) {
<<
" simplices - " << stree.
num_vertices() <<
" vertices." << std::endl;
std::clog << "Iterator on functional GIC simplices" << std::endl;
std::clog << vertex << " ";
}
std::clog << std::endl;
}
}
}
return 0;
}
Compute the Euclidean distance between two Points given by a range of coordinates....
Definition: distance_functions.h:34
Simplex Tree data structure for representing simplicial complexes.
Definition: Simplex_tree.h:75
Filtration_simplex_range const & filtration_simplex_range(Indexing_tag=Indexing_tag())
Returns a range over the simplices of the simplicial complex, in the order of the filtration.
Definition: Simplex_tree.h:262
Simplex_vertex_range simplex_vertex_range(Simplex_handle sh) const
Returns a range over the vertices of a simplex.
Definition: Simplex_tree.h:273
size_t num_vertices() const
Returns the number of vertices in the complex.
Definition: Simplex_tree.h:546
int dimension(Simplex_handle sh)
Returns the dimension of a simplex.
Definition: Simplex_tree.h:574
size_t num_simplices()
returns the number of simplices in the simplex_tree.
Definition: Simplex_tree.h:552
Cover complex data structure.
Definition: GIC.h:87
void set_function_from_file(const std::string &func_file_name)
Creates the function f from a file containing the function values.
Definition: GIC.h:493
double set_automatic_resolution()
Computes the optimal length of intervals (i.e. the smallest interval length avoiding discretization a...
Definition: GIC.h:552
void create_complex(SimplicialComplex &complex)
Creates the simplicial complex.
Definition: GIC.h:1292
void set_type(const std::string &t)
Specifies whether the type of the output simplicial complex.
Definition: GIC.h:176
void find_simplices()
Computes the simplices of the simplicial complex.
Definition: GIC.h:1306
void set_cover_from_function()
Creates a cover C from the preimages of the function f.
Definition: GIC.h:611
void set_color_from_file(const std::string &color_file_name)
Computes the function used to color the nodes of the simplicial complex from a file containing the fu...
Definition: GIC.h:955
void plot_DOT()
Creates a .dot file called SC.dot for neato (part of the graphviz package) once the simplicial comple...
Definition: GIC.h:1004
double set_graph_from_automatic_rips(Distance distance, int N=100)
Creates a graph G from a Rips complex whose threshold value is automatically tuned with subsampling—s...
Definition: GIC.h:439
void set_gain(double g=0.3)
Sets a gain from a value stored in memory (default value 0.3).
Definition: GIC.h:605
bool read_point_cloud(const std::string &off_file_name)
Reads and stores the input point cloud from .(n)OFF file.
Definition: GIC.h:232
void set_verbose(bool verb=false)
Specifies whether the program should display information or not.
Definition: GIC.h:184