astrix.planning module

Functions for observation flight path planning.

Note: These functions are typically only applicable for the NumPy backend.

point_from_heading(start, head, dist, time_new=TimeInvariant object, method='haversine')[source]

Calculate a new point given a start point, heading (degrees) and distance (meters). If point has len > 1, uses the last point.

Note: Applicable for NumPy backend only.

Return type:

Point

Parameters:
  • start (Point)

  • head (float)

  • dist (float)

  • time_new (TimeLike)

  • method (str)

turn_from_radius(start_point, start_heading, degrees, radius, speed, n=None)[source]

Create a set of points representing a turn.

Does not include the starting point (to reduce duplication when flight path constructed from points)

Parameters:
  • start_point (Point) – starting point of turn. If len(start_point) > 1, the last point is used.

  • start_heading (float) – initial heading, in degrees

  • degrees (float) – degrees of the turn, in degrees (i.e. 180 for half-turn)

  • radius (float) – radius of the turn (in metres)

  • speed (float) – air speed of the plan during turn (m/s)

  • n (int, optional) – number of points created to represent the turn, defualt is 1 per degree

  • Notes

  • turn (- There will be some small mis-match due to cartesian definition of)

:param : :param and haversine/rhumb line definition of distance.: :param - I’m sure there are much nicer ways which are more analytically correct: :param : :param which would be good to implement in the future.: