public class LatitudeCrossingDetector extends AbstractDetector<LatitudeCrossingDetector>
This detector identifies when a spacecraft crosses a fixed latitude with respect to a central body.
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Constructor and Description |
---|
LatitudeCrossingDetector(double maxCheck,
double threshold,
OneAxisEllipsoid body,
double latitude)
Build a detector.
|
LatitudeCrossingDetector(OneAxisEllipsoid body,
double latitude)
Build a new detector.
|
Modifier and Type | Method and Description |
---|---|
protected LatitudeCrossingDetector |
create(double newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler<? super LatitudeCrossingDetector> newHandler)
Build a new instance.
|
double |
g(SpacecraftState s)
Compute the value of the detection function.
|
OneAxisEllipsoid |
getBody()
Get the body on which the geographic zone is defined.
|
double |
getLatitude()
Get the fixed latitude to be crossed (radians).
|
eventOccurred, getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, resetState, withHandler, withMaxCheck, withMaxIter, withThreshold
public LatitudeCrossingDetector(OneAxisEllipsoid body, double latitude)
The new instance uses default values for maximal checking interval
(AbstractDetector.DEFAULT_MAXCHECK
) and convergence threshold (AbstractDetector.DEFAULT_THRESHOLD
).
body
- body on which the latitude is definedlatitude
- latitude to be crossedpublic LatitudeCrossingDetector(double maxCheck, double threshold, OneAxisEllipsoid body, double latitude)
maxCheck
- maximal checking interval (s)threshold
- convergence threshold (s)body
- body on which the latitude is definedlatitude
- latitude to be crossedprotected LatitudeCrossingDetector create(double newMaxCheck, double newThreshold, int newMaxIter, EventHandler<? super LatitudeCrossingDetector> newHandler)
create
in class AbstractDetector<LatitudeCrossingDetector>
newMaxCheck
- maximum checking interval (s)newThreshold
- convergence threshold (s)newMaxIter
- maximum number of iterations in the event time searchnewHandler
- event handler to call at event occurrencespublic OneAxisEllipsoid getBody()
public double getLatitude()
public double g(SpacecraftState s) throws OrekitException
The value is the spacecraft latitude minus the fixed latitude to be crossed. It is positive if the spacecraft is northward and negative if it is southward with respect to the fixed latitude.
g
in interface EventDetector
g
in class AbstractDetector<LatitudeCrossingDetector>
s
- the current state information: date, kinematics, attitudeOrekitException
- if some specific error occursCopyright © 2002-2017 CS Systèmes d'information. All rights reserved.