DGtal 2.0.0
Loading...
Searching...
No Matches
Fixture_X Struct Reference

Public Types

using Point = DGtal::Z3i::Point
using Domain = DGtal::Z3i::Domain
using KSpace = DGtal::Z3i::KSpace
using FixtureDigitalTopology = DGtal::Z3i::DT26_6
using FixtureDigitalSet
using FixtureMap = std::unordered_map<KSpace::Cell, CubicalCellData>
using FixtureComplex = DGtal::VoxelComplex<KSpace>

Public Member Functions

 Fixture_X ()
FixtureDigitalSet create_set ()
FixtureComplexcreate_complex_from_set (FixtureDigitalSet &input_set)

Data Fields

KSpace ks_fixture
FixtureComplex complex_fixture
FixtureDigitalSet set_fixture

Detailed Description

Definition at line 884 of file testVoxelComplex.cpp.

Member Typedef Documentation

◆ Domain

Definition at line 889 of file testVoxelComplex.cpp.

◆ FixtureComplex

◆ FixtureDigitalSet

Initial value:
std::unordered_set<typename DGtal::Z3i::Domain::Point>>
Aim: A wrapper class around a STL associative container for storing sets of digital points within som...
HyperRectDomain< Space > Domain
Definition StdDefs.h:172

Definition at line 893 of file testVoxelComplex.cpp.

◆ FixtureDigitalTopology

◆ FixtureMap

using Fixture_X::FixtureMap = std::unordered_map<KSpace::Cell, CubicalCellData>

Definition at line 896 of file testVoxelComplex.cpp.

◆ KSpace

Definition at line 890 of file testVoxelComplex.cpp.

◆ Point

Definition at line 888 of file testVoxelComplex.cpp.

Constructor & Destructor Documentation

◆ Fixture_X()

Fixture_X::Fixture_X ( )
inline

Definition at line 909 of file testVoxelComplex.cpp.

911 }
FixtureDigitalSet create_set()
FixtureComplex complex_fixture
FixtureDigitalSet set_fixture
FixtureComplex & create_complex_from_set(FixtureDigitalSet &input_set)

References complex_fixture, create_complex_from_set(), create_set(), ks_fixture, and set_fixture.

Member Function Documentation

◆ create_complex_from_set()

FixtureComplex & Fixture_X::create_complex_from_set ( FixtureDigitalSet & input_set)
inline

Definition at line 967 of file testVoxelComplex.cpp.

967 {
968
969 ks_fixture.init(input_set.domain().lowerBound(),
970 input_set.domain().upperBound(), true);
972 complex_fixture.construct(input_set);
973 return complex_fixture;
974 }
DGtal::VoxelComplex< KSpace > FixtureComplex

References complex_fixture, DGtal::DigitalSetByAssociativeContainer< TDomain, TContainer >::domain(), ks_fixture, DGtal::HyperRectDomain< TSpace >::lowerBound(), and DGtal::HyperRectDomain< TSpace >::upperBound().

Referenced by Fixture_X().

◆ create_set()

FixtureDigitalSet Fixture_X::create_set ( )
inline

Definition at line 916 of file testVoxelComplex.cpp.

916 {
917 using namespace DGtal;
918
919 Point p1(-16, -16, -16);
920 Point p2(16, 16, 16);
921 Domain domain(p1, p2);
922
924 std::vector<Point> center_set;
925 center_set.reserve(9);
926
927 Point c00(0, 0, 0);
928 center_set.push_back(c00);
929 Point c01x(-1, 0, 0);
930 center_set.push_back(c01x);
931 Point c10x(1, 0, 0);
932 center_set.push_back(c10x);
933 Point c02x(-2, 0, 0);
934 center_set.push_back(c02x);
935 Point c20x(2, 0, 0);
936 center_set.push_back(c20x);
937
938 Point c01y(0, -1, 0);
939 center_set.push_back(c01y);
940 Point c10y(0, 1, 0);
941 center_set.push_back(c10y);
942 Point c02y(0, -2, 0);
943 center_set.push_back(c02y);
944 Point c20y(0, 2, 0);
945 center_set.push_back(c20y);
946
947 Point z_pos(0, 0, 1);
948 int branch_length(4);
949 std::vector<Point> diagonals;
950 diagonals.reserve(6);
951 for (const auto &p : center_set) {
952 diagonals.clear();
953 for (int l = 0; l <= branch_length; ++l) {
954 diagonals.push_back({l, l, 0});
955 diagonals.push_back({l, -l, 0});
956 diagonals.push_back({-l, l, 0});
957 diagonals.push_back({-l, -l, 0});
958 for (int z = -1; z <= 1; ++z)
959 for (const auto &d : diagonals)
960 a_set.insert(p + d + (z * z_pos));
961 }
962 }
963
964 return a_set;
965 }
DGtal::DigitalSetByAssociativeContainer< DGtal::Z3i::Domain, std::unordered_set< typename DGtal::Z3i::Domain::Point > > FixtureDigitalSet
DGtal::Z3i::Domain Domain
DGtal::Z3i::Point Point
Domain domain

References domain, and DGtal::DigitalSetByAssociativeContainer< TDomain, TContainer >::insert().

Referenced by Fixture_X().

Field Documentation

◆ complex_fixture

FixtureComplex Fixture_X::complex_fixture

Definition at line 902 of file testVoxelComplex.cpp.

Referenced by create_complex_from_set(), and Fixture_X().

◆ ks_fixture

KSpace Fixture_X::ks_fixture

Definition at line 901 of file testVoxelComplex.cpp.

Referenced by create_complex_from_set(), and Fixture_X().

◆ set_fixture

FixtureDigitalSet Fixture_X::set_fixture

Definition at line 903 of file testVoxelComplex.cpp.

Referenced by Fixture_X().


The documentation for this struct was generated from the following file: