org.orekit.propagation.events
Class ExtremaThreeBodiesAngleDetector

java.lang.Object
  extended by org.orekit.propagation.events.AbstractDetector
      extended by org.orekit.propagation.events.ExtremaThreeBodiesAngleDetector
All Implemented Interfaces:
Serializable, EventDetector, MultiEventDetector

public class ExtremaThreeBodiesAngleDetector
extends AbstractDetector
implements MultiEventDetector

Detects the maximal or minimal angle between three bodies is reached, the spacecraft eventually being one of the bodies. If body1, body2 and body3 are the three bodies, the detector computes the angle between the two vectors v21 (vector from body2 to body1) and v23 (vector from body2 to body3). The local minimum or maximum is chosen through a constructor parameter, with values ExtremaLatitudeDetector.MIN, ExtremaLatitudeDetector.MAX and ExtremaLatitudeDetector.MIN_MAX for both.

The default implementation behavior is to stop propagation at minimum or/and maximum angle between three bodies depending on extremum type defined. This can be changed by overriding one of the following constructors :

A multi spacecraft propagation could be performed using the following constructors :