summaryrefslogtreecommitdiff
path: root/src/Skeleton_blocker/test
diff options
context:
space:
mode:
authorsalinasd <salinasd@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2015-02-23 13:58:21 +0000
committersalinasd <salinasd@636b058d-ea47-450e-bf9e-a15bfbe3eedb>2015-02-23 13:58:21 +0000
commit05bd4b83bd56e7b3dedcc513c07fd82be2198d3d (patch)
treec6ce13c92ceef4203b462d97e6a8c53c90168121 /src/Skeleton_blocker/test
parent15059e2c538cc289d6e67d81d829b8f1ad30c46b (diff)
skbl renaming, new link methods for abstract link of geometrical complex
git-svn-id: svn+ssh://scm.gforge.inria.fr/svnroot/gudhi/trunk@468 636b058d-ea47-450e-bf9e-a15bfbe3eedb Former-commit-id: cb85e1ae86635857fbaaa0781526cb3eeaa9a50a
Diffstat (limited to 'src/Skeleton_blocker/test')
-rw-r--r--src/Skeleton_blocker/test/TestGeometricComplex.cpp37
1 files changed, 36 insertions, 1 deletions
diff --git a/src/Skeleton_blocker/test/TestGeometricComplex.cpp b/src/Skeleton_blocker/test/TestGeometricComplex.cpp
index 1a81b7f7..bd7af89b 100644
--- a/src/Skeleton_blocker/test/TestGeometricComplex.cpp
+++ b/src/Skeleton_blocker/test/TestGeometricComplex.cpp
@@ -40,7 +40,7 @@ struct Geometry_trait{
typedef Geometry_trait::Point Point;
typedef Skeleton_blocker_simple_geometric_traits<Geometry_trait> Complex_geometric_traits;
typedef Skeleton_blocker_geometric_complex< Complex_geometric_traits > Complex;
-
+typedef Complex::Vertex_handle Vertex_handle;
bool test_constructor1(){
@@ -71,12 +71,47 @@ bool test_constructor1(){
return (complex==same);
}
+bool test_constructor2(){
+ Complex complex;
+ Skeleton_blocker_off_reader<Complex> off_reader("test2.off",complex);
+ if(!off_reader.is_valid()){
+ std::cerr << "Unable to read file"<<std::endl;
+ return false;
+ }
+ std::cout << "complex has "<<
+ complex.num_vertices()<<" vertices, "<<
+ complex.num_blockers()<<" blockers, "<<
+ complex.num_edges()<<" edges and" <<
+ complex.num_triangles()<<" triangles.";
+
+ if(complex.num_vertices()!=7 || complex.num_edges()!=12 || complex.num_triangles() !=6)
+ return false;
+
+ auto link_0 = complex.abstract_link(Vertex_handle(0));
+
+
+ std::cout<<"\n link(0):"<<link_0.to_string()<<endl;
+
+ auto link_geometric_0 = complex.link(Vertex_handle(0));
+
+ auto print_point = [&](Vertex_handle v){for(auto x : link_geometric_0.point(v)) std::cout <<x<<" "; std::cout<<std::endl;};
+
+ std::for_each(link_geometric_0.vertex_range().begin(),link_geometric_0.vertex_range().end(),print_point);
+
+// for(auto v : link_geometric_0.vertex_range())
+// std::cout<<"point("<<v<<"):"<<link_geometric_0.point(v)<<std::endl;
+
+ return link_0.num_vertices()==2;
+}
+
+
int main (int argc, char *argv[])
{
Tests tests_geometric_complex;
tests_geometric_complex.add("Test constructor 1",test_constructor1);
+ tests_geometric_complex.add("Test constructor 2",test_constructor2);
if(tests_geometric_complex.run())
return EXIT_SUCCESS;