DGtal 1.3.0
|
#include <iostream>
#include <algorithm>
#include "DGtal/base/Common.h"
#include "ConfigTest.h"
#include "DGtalCatch.h"
#include "DGtal/helpers/StdDefs.h"
#include "DGtal/topology/HalfEdgeDataStructure.h"
Go to the source code of this file.
Typedefs | |
typedef HalfEdgeDataStructure::Triangle | Triangle |
typedef HalfEdgeDataStructure::PolygonalFace | PolygonalFace |
typedef HalfEdgeDataStructure::Edge | Edge |
typedef HalfEdgeDataStructure::Arc | ArcT |
typedef HalfEdgeDataStructure::VertexIndexRange | VertexIndexRange |
typedef HalfEdgeDataStructure::Size | Size |
Functions | |
HalfEdgeDataStructure | makeTwoTriangles () |
HalfEdgeDataStructure | makeThreeTriangles () |
HalfEdgeDataStructure | makeTetrahedron () |
HalfEdgeDataStructure | makeOctahedron () |
HalfEdgeDataStructure | makeRibbonWithHole () |
HalfEdgeDataStructure | makeTriangulatedDisk () |
HalfEdgeDataStructure | makePyramid () |
HalfEdgeDataStructure | makeCube () |
HalfEdgeDataStructure | makeBox () |
SCENARIO ("HalfEdgeDataStructure build", "[halfedge][build]") | |
SCENARIO ("HalfEdgeDataStructure neighboring relations", "[halfedge][neighbors]") | |
SCENARIO ("HalfEdgeDataStructure flips", "[halfedge][flips]") | |
SCENARIO ("HalfEdgeDataStructure splits", "[halfedge][splits]") | |
SCENARIO ("HalfEdgeDataStructure merges", "[halfedge][merges]") | |
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 HalfEdgeDataStructure.
This file is part of the DGtal library.
Definition in file testHalfEdgeDataStructure.cpp.
typedef HalfEdgeDataStructure::Arc ArcT |
Definition at line 48 of file testHalfEdgeDataStructure.cpp.
typedef HalfEdgeDataStructure::Edge Edge |
Definition at line 47 of file testHalfEdgeDataStructure.cpp.
Definition at line 46 of file testHalfEdgeDataStructure.cpp.
typedef HalfEdgeDataStructure::Size Size |
Definition at line 50 of file testHalfEdgeDataStructure.cpp.
Definition at line 45 of file testHalfEdgeDataStructure.cpp.
Definition at line 49 of file testHalfEdgeDataStructure.cpp.
HalfEdgeDataStructure makeBox | ( | ) |
Definition at line 168 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makeCube | ( | ) |
Definition at line 154 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makeOctahedron | ( | ) |
Definition at line 90 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makePyramid | ( | ) |
Definition at line 141 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makeRibbonWithHole | ( | ) |
Definition at line 106 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build(), and DGtal::HalfEdgeDataStructure::getUnorderedEdgesFromTriangles().
Referenced by SCENARIO().
HalfEdgeDataStructure makeTetrahedron | ( | ) |
Definition at line 77 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makeThreeTriangles | ( | ) |
Definition at line 65 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
HalfEdgeDataStructure makeTriangulatedDisk | ( | ) |
Definition at line 123 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build(), and DGtal::HalfEdgeDataStructure::getUnorderedEdgesFromTriangles().
Referenced by SCENARIO().
HalfEdgeDataStructure makeTwoTriangles | ( | ) |
Definition at line 54 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::build().
Referenced by SCENARIO().
SCENARIO | ( | "HalfEdgeDataStructure build" | , |
"" | [halfedge][build] | ||
) |
Definition at line 183 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::boundaryArcs(), DGtal::HalfEdgeDataStructure::boundaryVertices(), GIVEN(), DGtal::HalfEdgeDataStructure::isValid(), DGtal::HalfEdgeDataStructure::isValidTriangulation(), makeBox(), makeCube(), makePyramid(), makeRibbonWithHole(), makeTetrahedron(), makeThreeTriangles(), makeTriangulatedDisk(), makeTwoTriangles(), DGtal::HalfEdgeDataStructure::nbEdges(), DGtal::HalfEdgeDataStructure::nbFaces(), DGtal::HalfEdgeDataStructure::nbHalfEdges(), DGtal::HalfEdgeDataStructure::nbVertices(), and REQUIRE().
SCENARIO | ( | "HalfEdgeDataStructure flips" | , |
"" | [halfedge][flips] | ||
) |
Definition at line 471 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::findHalfEdgeIndexFromArc(), DGtal::HalfEdgeDataStructure::flip(), GIVEN(), DGtal::HalfEdgeDataStructure::halfEdgeIndexFromArc(), DGtal::HalfEdgeDataStructure::halfEdgeIndexFromEdgeIndex(), DGtal::HalfEdgeDataStructure::isFlippable(), DGtal::HalfEdgeDataStructure::isValid(), DGtal::HalfEdgeDataStructure::isValidTriangulation(), makePyramid(), makeTetrahedron(), makeTwoTriangles(), DGtal::HalfEdgeDataStructure::nbEdges(), DGtal::HalfEdgeDataStructure::neighboringVertices(), and REQUIRE().
SCENARIO | ( | "HalfEdgeDataStructure merges" | , |
"" | [halfedge][merges] | ||
) |
Definition at line 612 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::findHalfEdgeIndexFromArc(), GIVEN(), DGtal::HalfEdgeDataStructure::isMergeable(), DGtal::HalfEdgeDataStructure::isValid(), DGtal::HalfEdgeDataStructure::isValidTriangulation(), makeOctahedron(), DGtal::HalfEdgeDataStructure::merge(), DGtal::HalfEdgeDataStructure::nbEdges(), DGtal::HalfEdgeDataStructure::nbFaces(), DGtal::HalfEdgeDataStructure::nbVertices(), DGtal::HalfEdgeDataStructure::neighboringVertices(), and REQUIRE().
SCENARIO | ( | "HalfEdgeDataStructure neighboring relations" | , |
"" | [halfedge][neighbors] | ||
) |
Definition at line 395 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::getNeighboringVertices(), GIVEN(), makeBox(), makeRibbonWithHole(), makeTwoTriangles(), and REQUIRE().
SCENARIO | ( | "HalfEdgeDataStructure splits" | , |
"" | [halfedge][splits] | ||
) |
Definition at line 585 of file testHalfEdgeDataStructure.cpp.
References DGtal::HalfEdgeDataStructure::findHalfEdgeIndexFromArc(), GIVEN(), DGtal::HalfEdgeDataStructure::isFlippable(), DGtal::HalfEdgeDataStructure::isValid(), DGtal::HalfEdgeDataStructure::isValidTriangulation(), makeTwoTriangles(), DGtal::HalfEdgeDataStructure::nbEdges(), DGtal::HalfEdgeDataStructure::nbFaces(), DGtal::HalfEdgeDataStructure::nbVertices(), DGtal::HalfEdgeDataStructure::neighboringVertices(), REQUIRE(), and DGtal::HalfEdgeDataStructure::split().