11 #ifdef MORPHIO_USE_DOUBLE
12 using floatType = double;
13 constexpr floatType epsilon = 1e-6;
14 constexpr floatType PI = M_PI;
16 using floatType = float;
17 constexpr floatType epsilon = 1e-6f;
18 constexpr floatType PI =
static_cast<floatType
>(M_PI);
21 using Point = std::array<morphio::floatType, 3>;
22 using Points = std::vector<Point>;
24 Point operator+(
const Point& left,
const Point& right);
25 Point operator-(
const Point& left,
const Point& right);
26 Point operator+=(Point& left,
const Point& right);
27 Point operator-=(Point& left,
const Point& right);
28 Point operator/=(Point& left,
const floatType factor);
30 Points operator+(
const Points& points,
const Point& right);
31 Points operator-(
const Points& points,
const Point& right);
32 Points operator+=(Points& points,
const Point& right);
33 Points operator-=(Points& points,
const Point& right);
36 Point operator*(
const Point& from, T factor);
38 Point operator*(T factor,
const Point& from);
40 Point operator/(
const Point& from, T factor);
42 Point centerOfGravity(
const T& points);
44 floatType maxDistanceToCenterOfGravity(
const T& points);
46 extern template Point centerOfGravity(
const Points&);
47 extern template floatType maxDistanceToCenterOfGravity(
const Points&);
49 std::string dumpPoint(
const Point& point);
50 std::string dumpPoints(
const Points& point);
53 char my_tolower(
char ch);
58 floatType
distance(
const Point& left,
const Point& right);
60 std::ostream& operator<<(std::ostream& os,
const morphio::Point& point);
61 std::ostream& operator<<(std::ostream& os,
const Points& points);
64 std::ostream& operator<<(std::ostream& os,
const morphio::Point& point);
65 std::ostream& operator<<(std::ostream& os,
const morphio::Points& points);
Definition: endoplasmic_reticulum.h:5
floatType distance(const Point &left, const Point &right)