Creates precomputed tables for determining whether some point is simple within an 3D object.
#include <DGtal/topology/tables/NeighborhoodTablesGenerators.h>
int main( int argc, char** argv )
{
string error_message(
"Select ForegroundAdjacency for object topology:\n"
"- 26_6 \n"
"- 18_6 \n"
"- 6_18 \n"
"- 6_26 \n");
if (argc != 2 ){
cout << error_message << std::endl;
return 1;
}
std::string input_str = std::string(argv[1]);
using ConfigMap = std::bitset<67108864> ;
unique_ptr<ConfigMap> table(new ConfigMap);
if (input_str == "26_6")
functions::generateSimplicityTable< Object26_6, ConfigMap >( dt26_6, *table );
else if (input_str == "18_6")
functions::generateSimplicityTable< Object18_6, ConfigMap >( dt18_6, *table );
else if (input_str == "6_18")
functions::generateSimplicityTable< Object6_18, ConfigMap >( dt6_18, *table );
else if (input_str == "6_26")
functions::generateSimplicityTable< Object6_26, ConfigMap >( dt6_26, *table );
else {
cout << error_message << endl;
return 1;
}
string filename = "simplicity_table" + input_str + ".txt";
ofstream file( filename );
file << *table;
file.close();
return 0;
}