17#ifndef __dwi_tractography_seeding_basic_h__
18#define __dwi_tractography_seeding_basic_h__
36 namespace Tractography
46 Sphere (
const std::string& in) :
50 throw Exception (
"Could not parse seed \"" + in +
"\" as a spherical seed point; needs to be 4 comma-separated values (XYZ position, then radius)");
51 pos = { float(F[0]), float(F[1]), float(F[2]) };
56 virtual bool get_seed (Eigen::Vector3f& p)
const override;
75 virtual bool get_seed (Eigen::Vector3f& p)
const override;
95 mask.index(0) = 0; mask.index(1) = 0; mask.index(2) = -1;
98 virtual bool get_seed (Eigen::Vector3f& p)
const override;
105 mutable uint32_t inc;
106 mutable bool expired;
120 offset (-0.5 + (1.0 / (2*os))),
127 virtual bool get_seed (Eigen::Vector3f& p)
const override;
133 mutable Eigen::Vector3i pos;
134 const float offset, step;
135 mutable bool expired;
144 using transform_type = Eigen::Transform<float, 3, Eigen::AffineCompact>;
148 virtual bool get_seed (Eigen::Vector3f& p)
const override;
151#ifdef REJECTION_SAMPLING_USE_INTERPOLATION
default_type spacing(size_t axis) const
constexpr T pow3(const T &v)
uint32_t get_count(ImageType &data)
vector< default_type > parse_floats(const std::string &spec)
Eigen::Transform< default_type, 3, Eigen::AffineCompact > transform_type
the type for the affine transform of an image:
#define MAX_TRACKING_SEED_ATTEMPTS_FIXED
#define MAX_TRACKING_SEED_ATTEMPTS_RANDOM