4 #include "../exception/invalidargumentexception.h"
11 _dimension(dimension),
27 std::vector<double> coords;
30 unsigned long long c = coordinates[i];
35 return Point(coords, 1.0);
40 std::vector<unsigned long long> coordinates;
43 double delta = vector[i] -
minimum[i];
44 unsigned long long steps = std::floor(delta /
stepSize[i] + 0.5);
45 if(steps < 0 || steps >=
n())
47 coordinates.push_back(steps);
virtual size_t dimension() const
Space dimension.
DiscreteBoundedRealSpaceProvider(size_t dimension, unsigned long long n, Point minimum, double length)
virtual unsigned long long n() const
Number of discrete coordinates per dimension.
virtual DiscreteBoundedRealSpaceProvider * clone() const
Provides discrete bounded space features for Point.
std::vector< double > stepSize
virtual Point getVector(std::vector< unsigned long long > coordinates) const
Returns the vector represented by the given coordinates.
Weighted point of arbitrary dimension.
Indicates invalid values of arguments.
virtual std::vector< unsigned long long > getCoordinates(Point const &vector) const
Returns the coordinates of the given vector.