DGtal 2.1.1
Loading...
Searching...
No Matches
testDomainSplitter.cpp File Reference
#include <iostream>
#include "DGtal/base/Common.h"
#include "DGtalCatch.h"
#include "DGtal/helpers/StdDefs.h"
#include "DGtal/kernel/domains/DomainSplitter.h"
Include dependency graph for testDomainSplitter.cpp:

Go to the source code of this file.

Functions

 TEST_CASE ("Domain Regular Grid Splitter tests")
 
 TEST_CASE ("Domain Axis Splitter tests")
 
 REQUIRE (output.size()==2)
 

Variables

AxisDomainSplitter< Domainsplitter
 
AxisDomainSplitter< Domain >::SplitDomainsInfo output = splitter(domain,2,1)
 

Detailed Description

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/.

Author
David Coeurjolly (david.nosp@m..coe.nosp@m.urjol.nosp@m.ly@c.nosp@m.nrs.f.nosp@m.r) Laboratoire d'InfoRmatique en Image et Systèmes d'information - LIRIS (CNRS, UMR 5205), INSA-Lyon, France
Date
2026/04/03

Functions for testing class DomainSplitter

This file is part of the DGtal library.

Definition in file testDomainSplitter.cpp.

Function Documentation

◆ REQUIRE()

REQUIRE ( output.  size() = =2)

Referenced by TEST_CASE(), and TEST_CASE().

◆ TEST_CASE() [1/2]

TEST_CASE ( "Domain Axis Splitter tests"  )

Definition at line 77 of file testDomainSplitter.cpp.

78{
79 Domain domain(Point(0,0,0), Point(16,32,64));
80
82
84 REQUIRE( output.size() == 3);
85
86 trace.info() << "Original domain: "<<domain<<std::endl;
87 for(auto d: output)
88 trace.info()<< " subdomain: "<<d.domain<<std::endl;
89
90#ifdef DGTAL_TESTS_WITH_VIEWER
91#ifdef DGTAL_WITH_POLYSCOPE_VIEWER
92 PolyscopeViewer viewer;
93 HueShadeColorMap<unsigned int> cmap(0,(unsigned int)output.size());
94 for(auto i=0; i< output.size(); ++i)
95 {
96 viewer << cmap(i);
97 viewer << output[i].domain;
98 }
99 viewer.show();
100#endif
101#endif
102}
Aim: This class template may be used to (linearly) convert scalar values in a given range into a colo...
void show() override
Starts the event loop and display of elements.
std::ostream & info()
Space::Point Point
Definition StdDefs.h:168
Trace trace
STL namespace.
Splits a domain along one of the domain grid axis.
std::vector< SplitInfo< Domain > > SplitDomainsInfo
REQUIRE(output.size()==2)
AxisDomainSplitter< Domain >::SplitDomainsInfo output
AxisDomainSplitter< Domain > splitter
Domain domain

References domain, DGtal::Trace::info(), output, REQUIRE(), DGtal::PolyscopeViewer< Space, KSpace >::show(), splitter, and DGtal::trace.

◆ TEST_CASE() [2/2]

TEST_CASE ( "Domain Regular Grid Splitter tests"  )

Definition at line 50 of file testDomainSplitter.cpp.

51{
52 Domain domain(Point(0,0,0), Point(16,32,64));
53
55
57 REQUIRE( output.size() <= 12);
58
59 trace.info() << "Original domain: "<<domain<<std::endl;
60 for(auto d: output)
61 trace.info()<< " subdomain: "<<d.domain<<std::endl;
62
63#ifdef DGTAL_TESTS_WITH_VIEWER
64#ifdef DGTAL_WITH_POLYSCOPE_VIEWER
65 PolyscopeViewer viewer;
66 HueShadeColorMap<unsigned int> cmap(0,(unsigned int)output.size());
67 for(auto i=0; i< output.size(); ++i)
68 {
69 viewer << cmap(i);
70 viewer << output[i].domain;
71 }
72 viewer.show();
73#endif
74#endif
75}
Splits a domain evenly along all dimensions.
std::vector< SplitInfo< Domain > > SplitDomainsInfo

References domain, DGtal::Trace::info(), output, REQUIRE(), DGtal::PolyscopeViewer< Space, KSpace >::show(), splitter, and DGtal::trace.

Variable Documentation

◆ output

AxisDomainSplitter<Domain>::SplitDomainsInfo output = splitter(domain,2,1)
Examples
geometry/volumes/fullConvexitySphereGeodesics.cpp, geometry/volumes/fullConvexityThinning3D.cpp, and geometry/volumes/pConvexity-benchmark.cpp.

Definition at line 110 of file testDomainSplitter.cpp.

Referenced by DGtal::ShortcutsGeometry< TKSpace >::getATScalarFieldApproximation(), DGtal::ShortcutsGeometry< TKSpace >::getATScalarFieldApproximation(), DGtal::ShortcutsGeometry< TKSpace >::getATVectorFieldApproximation(), DGtal::ShortcutsGeometry< TKSpace >::getATVectorFieldApproximation(), DGtal::ATSolver2D< TKSpace, TLinearAlgebra >::getOutputScalarFieldU2(), DGtal::ATSolver2D< TKSpace, TLinearAlgebra >::getOutputScalarFieldV0(), DGtal::ATSolver2D< TKSpace, TLinearAlgebra >::getOutputVectorFieldU2(), main(), DGtal::Shortcuts< TKSpace >::CellWriter::operator()(), DGtal::Shortcuts< TKSpace >::SCellWriter::operator()(), DGtal::Shortcuts< TKSpace >::ValueWriter< Value >::operator()(), DGtal::Shortcuts< TKSpace >::ValueWriter< Value >::operator()(), DGtal::Shortcuts< TKSpace >::outputCellMapAsCSV(), DGtal::Shortcuts< TKSpace >::outputDualDigitalSurfaceAsObj(), DGtal::Shortcuts< TKSpace >::outputDualDigitalSurfaceAsObj(), DGtal::Shortcuts< TKSpace >::outputPrimalDigitalSurfaceAsObj(), DGtal::Shortcuts< TKSpace >::outputPrimalDigitalSurfaceAsObj(), DGtal::Shortcuts< TKSpace >::outputPrimalIdxDigitalSurfaceAsObj(), DGtal::Shortcuts< TKSpace >::outputPrimalIdxDigitalSurfaceAsObj(), outputResults(), DGtal::Shortcuts< TKSpace >::outputSCellMapAsCSV(), DGtal::Shortcuts< TKSpace >::outputSurfelsAsObj(), DGtal::Shortcuts< TKSpace >::saveBinaryImage(), DGtal::Shortcuts< TKSpace >::saveGrayScaleImage(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOBJ(), DGtal::Shortcuts< TKSpace >::saveOFF(), DGtal::Shortcuts< TKSpace >::saveOFF(), saveToObj(), saveVoroMap(), SCENARIO(), SCENARIO(), HodgeTester< Calculus, order >::test(), TEST_CASE(), TEST_CASE(), testDuvalPP(), testDuvalPPMod(), testFLF(), testHullFunctions2D(), testSegmentationLarger(), and DGtal::PolygonalCalculus< TRealPoint, TRealVector >::vectorArea().

◆ splitter