DGtal
1.5.beta
|
#include <iostream>
#include <vector>
#include <algorithm>
#include "DGtal/base/Common.h"
#include "DGtal/kernel/SpaceND.h"
#include "DGtal/topology/KhalimskySpaceND.h"
#include "DGtal/geometry/volumes/CellGeometry.h"
#include "DGtal/geometry/volumes/DigitalConvexity.h"
#include "DGtalCatch.h"
Go to the source code of this file.
Functions | |
SCENARIO ("DigitalConvexity< Z2 > unit tests", "[digital_convexity][2d]") | |
SCENARIO ("DigitalConvexity< Z2 > fully convex triangles", "[convex_simplices][2d]") | |
SCENARIO ("DigitalConvexity< Z3 > fully convex tetrahedra", "[convex_simplices][3d]") | |
SCENARIO ("DigitalConvexity< Z3 > rational fully convex tetrahedra", "[convex_simplices][3d][rational]") | |
SCENARIO ("DigitalConvexity< Z2 > rational fully convex tetrahedra", "[convex_simplices][2d][rational]") | |
SCENARIO ("DigitalConvexity< Z3 > full subconvexity of segments and triangles", "[subconvexity][3d]") | |
SCENARIO ("DigitalConvexity< Z3 > full convexity of polyhedra", "[full_convexity][3d]") | |
SCENARIO ("DigitalConvexity< Z4 > full convexity of polyhedra", "[full_convexity][4d]") | |
SCENARIO ("DigitalConvexity< Z2 > sub-convexity of polyhedra", "[full_subconvexity][2d]") | |
SCENARIO ("DigitalConvexity< Z3 > sub-convexity of polyhedra", "[full_subconvexity][3d]") | |
SCENARIO ("DigitalConvexity< Z3 > envelope", "[envelope][3d]") | |
SCENARIO ("DigitalConvexity< Z2 > envelope", "[envelope][2d]") | |
SCENARIO ("DigitalConvexity< Z2 > relative envelope", "[rel_envelope][2d]") | |
SCENARIO ("DigitalConvexity< Z3 > relative envelope", "[rel_envelope][3d]") | |
SCENARIO ("DigitalConvexity< Z3 > full subconvexity of triangles", "[subconvexity][3d]") | |
SCENARIO ("DigitalConvexity< Z3 > full subconvexity of points and triangles", "[subconvexity][3d]") | |
This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.
Functions for testing class DigitalConvexity.
This file is part of the DGtal library.
Definition in file testDigitalConvexity.cpp.
SCENARIO | ( | "DigitalConvexity< Z2 > envelope" | , |
"" | [envelope][2d] | ||
) |
Definition at line 778 of file testDigitalConvexity.cpp.
References DGtal::DigitalConvexity< TKSpace >::depthLastEnvelope(), DGtal::DigitalConvexity< TKSpace >::envelope(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z2 > fully convex triangles" | , |
"" | [convex_simplices][2d] | ||
) |
Definition at line 113 of file testDigitalConvexity.cpp.
References domain, DGtal::DigitalConvexity< TKSpace >::isKConvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), REQUIRE(), and DGtal::DigitalConvexity< TKSpace >::simplexType().
SCENARIO | ( | "DigitalConvexity< Z2 > rational fully convex tetrahedra" | , |
"" | [convex_simplices][2d][rational] | ||
) |
Definition at line 369 of file testDigitalConvexity.cpp.
References CAPTURE(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::isKConvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeRationalSimplex(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z2 > relative envelope" | , |
"" | [rel_envelope][2d] | ||
) |
Definition at line 801 of file testDigitalConvexity.cpp.
References CAPTURE(), DGtal::DigitalConvexity< TKSpace >::envelope(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::relativeEnvelope(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z2 > sub-convexity of polyhedra" | , |
"" | [full_subconvexity][2d] | ||
) |
Definition at line 632 of file testDigitalConvexity.cpp.
References DGtal::DigitalConvexity< TKSpace >::isFullySubconvex(), DGtal::L, DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makePolytope(), REQUIRE(), and DGtal::DigitalConvexity< TKSpace >::StarCvxH().
SCENARIO | ( | "DigitalConvexity< Z2 > unit tests" | , |
"" | [digital_convexity][2d] | ||
) |
Definition at line 50 of file testDigitalConvexity.cpp.
References GIVEN(), DGtal::DigitalConvexity< TKSpace >::insidePoints(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z3 > envelope" | , |
"" | [envelope][3d] | ||
) |
Definition at line 704 of file testDigitalConvexity.cpp.
References CAPTURE(), DGtal::DigitalConvexity< TKSpace >::depthLastEnvelope(), DGtal::DigitalConvexity< TKSpace >::envelope(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z3 > full convexity of polyhedra" | , |
"" | [full_convexity][3d] | ||
) |
Definition at line 507 of file testDigitalConvexity.cpp.
References CAPTURE(), domain, DGtal::DigitalConvexity< TKSpace >::envelope(), DGtal::BoundedLatticePolytope< TSpace >::getPoints(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::isFullyConvexFast(), DGtal::DigitalConvexity< TKSpace >::makePolytope(), REQUIRE(), and DGtal::Clock::startClock().
SCENARIO | ( | "DigitalConvexity< Z3 > full subconvexity of points and triangles" | , |
"" | [subconvexity][3d] | ||
) |
Definition at line 961 of file testDigitalConvexity.cpp.
References DGtal::crossProduct(), domain, DGtal::DigitalConvexity< TKSpace >::isFullySubconvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), REQUIRE(), and DGtal::DigitalConvexity< TKSpace >::StarCvxH().
SCENARIO | ( | "DigitalConvexity< Z3 > full subconvexity of segments and triangles" | , |
"" | [subconvexity][3d] | ||
) |
Definition at line 424 of file testDigitalConvexity.cpp.
References domain, DGtal::Trace::info(), DGtal::DigitalConvexity< TKSpace >::isFullySubconvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), REQUIRE(), and DGtal::trace.
SCENARIO | ( | "DigitalConvexity< Z3 > full subconvexity of triangles" | , |
"" | [subconvexity][3d] | ||
) |
Definition at line 887 of file testDigitalConvexity.cpp.
References domain, DGtal::Trace::info(), DGtal::DigitalConvexity< TKSpace >::isFullySubconvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), REQUIRE(), DGtal::DigitalConvexity< TKSpace >::StarCvxH(), and DGtal::trace.
SCENARIO | ( | "DigitalConvexity< Z3 > fully convex tetrahedra" | , |
"" | [convex_simplices][3d] | ||
) |
Definition at line 193 of file testDigitalConvexity.cpp.
References domain, DGtal::BoundedLatticePolytope< TSpace >::getPoints(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::isFullyConvexFast(), DGtal::DigitalConvexity< TKSpace >::isKConvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeSimplex(), REQUIRE(), and DGtal::DigitalConvexity< TKSpace >::simplexType().
SCENARIO | ( | "DigitalConvexity< Z3 > rational fully convex tetrahedra" | , |
"" | [convex_simplices][3d][rational] | ||
) |
Definition at line 307 of file testDigitalConvexity.cpp.
References CAPTURE(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::isKConvex(), DGtal::DigitalConvexity< TKSpace >::isSimplexFullDimensional(), DGtal::DigitalConvexity< TKSpace >::makeRationalSimplex(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z3 > relative envelope" | , |
"" | [rel_envelope][3d] | ||
) |
Definition at line 852 of file testDigitalConvexity.cpp.
References CAPTURE(), DGtal::DigitalConvexity< TKSpace >::envelope(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::relativeEnvelope(), and REQUIRE().
SCENARIO | ( | "DigitalConvexity< Z3 > sub-convexity of polyhedra" | , |
"" | [full_subconvexity][3d] | ||
) |
Definition at line 666 of file testDigitalConvexity.cpp.
References DGtal::DigitalConvexity< TKSpace >::isFullySubconvex(), DGtal::L, DGtal::DigitalConvexity< TKSpace >::makeCellCover(), DGtal::DigitalConvexity< TKSpace >::makePolytope(), REQUIRE(), and DGtal::DigitalConvexity< TKSpace >::StarCvxH().
SCENARIO | ( | "DigitalConvexity< Z4 > full convexity of polyhedra" | , |
"" | [full_convexity][4d] | ||
) |
Definition at line 570 of file testDigitalConvexity.cpp.
References CAPTURE(), domain, DGtal::DigitalConvexity< TKSpace >::envelope(), DGtal::BoundedLatticePolytope< TSpace >::getPoints(), DGtal::DigitalConvexity< TKSpace >::isFullyConvex(), DGtal::DigitalConvexity< TKSpace >::isFullyConvexFast(), DGtal::DigitalConvexity< TKSpace >::makePolytope(), REQUIRE(), and DGtal::Clock::startClock().