31 coordinate_system(coordinate_system_)
37 point({{std::numeric_limits<double>::signaling_NaN(),std::numeric_limits<double>::signaling_NaN(), std::numeric_limits<double>::signaling_NaN()}}),
38 coordinate_system(coordinate_system_)
47 point({{std::numeric_limits<double>::signaling_NaN(),std::numeric_limits<double>::signaling_NaN()}}),
48 coordinate_system(coordinate_system_)
58 coordinate_system(coordinate_system_)
67 template<
unsigned int dim>
74 const double d_longitude = two[0] - this->point[0];
75 const double d_latitude = two[1] - this->point[1];
76 const double sin_d_lat =
std::sin(d_latitude * 0.5);
77 const double sin_d_long =
std::sin(d_longitude * 0.5);
78 return 2.0 * asin(sqrt((sin_d_lat * sin_d_lat) + (sin_d_long*sin_d_long) *
std::cos(this->point[1]) *
std::cos(two[1])));
82 const double x_distance_to_reference_point = point[0]-two[0];
83 const double y_distance_to_reference_point = point[1]-two[1];
84 return sqrt((x_distance_to_reference_point*x_distance_to_reference_point) + (y_distance_to_reference_point*y_distance_to_reference_point));
template WorldBuilder::Point< 3 > operator*(const double scalar, const Point< 3 > &point)
double cos(const double angle)
#define WBAssertThrow(condition, message)
double sin(const double raw_angle)
Point(CoordinateSystem coordinate_system_)