62#if __cplusplus >= 201703L
70 set_direction(t_direction);
71 set_distance(t_distance);
76 set_direction(other.direction());
77 set_distance(other.distance());
82 set_direction(other.direction);
83 set_distance(other.distance);
86#if __cplusplus >= 201103L
89 set_direction(other.direction());
90 set_distance(other.distance());
95 set_direction(other.direction);
96 set_distance(other.distance);
108 set_direction(other.direction());
109 set_distance(other.distance());
119 set_direction(other.direction);
120 set_distance(other.distance);
124#if __cplusplus >= 201103L
127 if (&other ==
this) {
130 set_direction(other.direction());
131 set_distance(other.distance());
137 if (&other ==
this) {
140 set_direction(other.direction);
141 set_distance(other.distance);
148 return percentCoordinate(cameraPivot, cameraOffset).cameraCoordinate(resWidth, resHeight);
153 return percentCoordinate(cameraPivot, cameraOffset).pixelCoordinate(resWidth, resHeight);
163 return clampedPercentCoordinate(cameraPivot, cameraOffset).cameraCoordinate(resWidth, resHeight);
168 return clampedPercentCoordinate(cameraPivot, cameraOffset).pixelCoordinate(resWidth, resHeight);
218 return !(*
this == other);
228 return !(*
this == other);
gu_cartesian_coordinate rr_coord_to_cartesian_coord(const gu_relative_coordinate coord)
gu_percent_coordinate clamped_rr_coord_to_pct_coord(const gu_relative_coordinate coord, const gu_camera_pivot camera_pivot, const int cameraOffset)
gu_percent_coordinate rr_coord_to_pct_coord(const gu_relative_coordinate coord, const gu_camera_pivot camera_pivot, const int cameraOffset)
gu_field_coordinate rr_coord_to_field_coord(const gu_relative_coordinate coord, const degrees_t heading)
bool gu_relative_coordinate_equals(const gu_relative_coordinate lhs, const gu_relative_coordinate rhs, const double tolerance)
PixelCoordinate pixelCoordinate(const GU::CameraPivot &, const int, const pixels_u, const pixels_u) const NOEXCEPT
PercentCoordinate clampedPercentCoordinate(const GU::CameraPivot &, const int) const NOEXCEPT
RelativeCoordinate() NOEXCEPT
void set_distance(const millimetres_u) NOEXCEPT
PixelCoordinate clampedPixelCoordinate(const GU::CameraPivot &, const int, const pixels_u, const pixels_u) const NOEXCEPT
void set_direction(const degrees_d) NOEXCEPT
millimetres_u distance() const NOEXCEPT
RelativeCoordinate relativeCoordinateTo(const RelativeCoordinate &) const NOEXCEPT
degrees_d direction() const NOEXCEPT
bool operator==(const RelativeCoordinate &other) const NOEXCEPT
CartesianCoordinate cartesianCoordinate() const NOEXCEPT
RelativeCoordinate & operator=(const RelativeCoordinate &other) NOEXCEPT
CameraCoordinate clampedCameraCoordinate(const GU::CameraPivot &, const int, const pixels_u, const pixels_u) const NOEXCEPT
CameraCoordinate cameraCoordinate(const GU::CameraPivot &, const int, const pixels_u, const pixels_u) const NOEXCEPT
~RelativeCoordinate() NOEXCEPT
bool operator!=(const RelativeCoordinate &other) const NOEXCEPT
PercentCoordinate percentCoordinate(const GU::CameraPivot &, const int) const NOEXCEPT
FieldCoordinate fieldCoordinate(const degrees_t) const NOEXCEPT
A coordinate that is relative to some other coordinate.
degrees_d direction
The heading towards the coordinate.
millimetres_u distance
The distance to the coordinate.