public class SurfaceDistanceDetector extends DistanceDetector
The default implementation behaviour is to stop propagation when the distance is
reached. This can be changed by using provided constructors.
DistanceDetector},
Serialized Form| Modifier and Type | Class and Description |
|---|---|
static class |
SurfaceDistanceDetector.BodyDistanceType
Body distance type.
|
EventDetector.ActionDECREASING, distance, INCREASING, INCREASING_DECREASING, targetactionAtEntry, actionAtExit, DEFAULT_MAXCHECK, DEFAULT_MAXITER, DEFAULT_THRESHOLD, removeAtEntry, removeAtExit, shouldBeRemovedFlag| Constructor and Description |
|---|
SurfaceDistanceDetector(BodyShape bodyShapeIn,
double surfaceDistanceIn,
SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn)
Constructor for a DistanceDetector instance.
|
SurfaceDistanceDetector(BodyShape bodyShapeIn,
double surfaceDistanceIn,
SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn,
double maxCheck,
double threshold)
Constructor for a DistanceDetector instance with additional maxCheck and threshold parameters
The default implementation behavior is to
stop propagation when the distance is
reached. |
SurfaceDistanceDetector(BodyShape bodyShapeIn,
double surfaceDistanceIn,
SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn,
double maxCheck,
double threshold,
EventDetector.Action actionIncreasing,
EventDetector.Action actionDecreasing)
Constructor for a DistanceDetector instance with complementary parameters.
|
SurfaceDistanceDetector(BodyShape bodyShapeIn,
double surfaceDistanceIn,
SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn,
double maxCheck,
double threshold,
EventDetector.Action actionIncreasing,
EventDetector.Action actionDecreasing,
boolean removeIncreasing,
boolean removeDecreasing)
Constructor for a DistanceDetector instance with complementary parameters.
|
SurfaceDistanceDetector(BodyShape bodyShapeIn,
double surfaceDistanceIn,
SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn,
int slopeSelection,
double maxCheck,
double threshold,
EventDetector.Action action,
boolean remove)
Build a new altitude detector with slope selection.
|
| Modifier and Type | Method and Description |
|---|---|
EventDetector |
copy()
A copy of the detector.
|
double |
g(SpacecraftState state)
Compute the value of the switching function.
|
SurfaceDistanceDetector.BodyDistanceType |
getBodyDistanceType()
Getter for the chosen body distance type for the detector.
|
Frame |
getBodyFixedFrame()
Getter for the body fixed frame.
|
BodyShape |
getBodyShape()
Getter for the body shape.
|
eventOccurred, getDistance, getTargetfilterEvent, getActionAtEntry, getActionAtExit, getMaxCheckInterval, getMaxIterationCount, getSlopeSelection, getThreshold, init, isRemoveAtEntry, isRemoveAtExit, logEventsOverTimeInterval, resetState, setMaxCheckInterval, setMaxIter, shouldBeRemovedpublic SurfaceDistanceDetector(BodyShape bodyShapeIn, double surfaceDistanceIn, SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn)
This simple constructor takes default values for maximal checking interval (AbstractDetector.DEFAULT_MAXCHECK) and
convergence threshold (AbstractDetector.DEFAULT_THRESHOLD).
The default implementation behavior is to stop propagation when the distance is
reached.
The surfaceDistanceIn parameter must be positive.
bodyShapeIn - The body shape whose distance is watchedsurfaceDistanceIn - Distance triggering the event (m)bodyDistanceTypeIn - Body distance typeIllegalArgumentException - if the distance is negativepublic SurfaceDistanceDetector(BodyShape bodyShapeIn, double surfaceDistanceIn, SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn, double maxCheck, double threshold)
The default implementation behavior is to stop propagation when the distance is
reached.
bodyShapeIn - The body shape whose distance is watchedsurfaceDistanceIn - Distance triggering the event (m)bodyDistanceTypeIn - Body distance typemaxCheck - Maximal checking interval (s)threshold - Convergence threshold (s)IllegalArgumentException - if the distance is negativepublic SurfaceDistanceDetector(BodyShape bodyShapeIn, double surfaceDistanceIn, SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn, double maxCheck, double threshold, EventDetector.Action actionIncreasing, EventDetector.Action actionDecreasing)
bodyShapeIn - The body shape whose distance is watchedsurfaceDistanceIn - Distance triggering the event (m)bodyDistanceTypeIn - Body distance typemaxCheck - Maximal checking interval (s)threshold - Convergence threshold (s)actionIncreasing - Action performed at distance detection when distance is increasingactionDecreasing - Action performed at distance detection when distance is decreasingIllegalArgumentException - if the distance is negativepublic SurfaceDistanceDetector(BodyShape bodyShapeIn, double surfaceDistanceIn, SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn, double maxCheck, double threshold, EventDetector.Action actionIncreasing, EventDetector.Action actionDecreasing, boolean removeIncreasing, boolean removeDecreasing)
bodyShapeIn - The body shape whose distance is watchedsurfaceDistanceIn - Distance triggering the event (m)bodyDistanceTypeIn - Body distance typemaxCheck - Maximal checking interval (s)threshold - Convergence threshold (s)actionIncreasing - Action performed at distance detection when distance is increasingactionDecreasing - Action performed at distance detection when distance is decreasingremoveIncreasing - True if detector should be removed at increasing distance detectionremoveDecreasing - True if detector should be removed at decreasing distance detectionIllegalArgumentException - if the distance is negativepublic SurfaceDistanceDetector(BodyShape bodyShapeIn, double surfaceDistanceIn, SurfaceDistanceDetector.BodyDistanceType bodyDistanceTypeIn, int slopeSelection, double maxCheck, double threshold, EventDetector.Action action, boolean remove)
The maximal interval between altitude checks should be smaller than the half duration of the minimal pass to handle, otherwise some short passes could be missed.
bodyShapeIn - The body shape whose distance is watchedsurfaceDistanceIn - Distance triggering the event (m)bodyDistanceTypeIn - Body distance typeslopeSelection - The g-function slope selection (0,1 or 2)maxCheck - Maximal checking interval (s)threshold - Convergence threshold (s)action - Action performed at distance detectionremove - True if detector should be removed at distance detectionpublic double g(SpacecraftState state) throws PatriusException
g in interface EventDetectorg in class DistanceDetectorstate - the current state information: date, kinematics, attitude for forces and events
computation, mass provider, and additional statesPatriusException - if some specific error occurs(fr.cnes.sirius.patrius.propagation.SpacecraftState)public SurfaceDistanceDetector.BodyDistanceType getBodyDistanceType()
public BodyShape getBodyShape()
public Frame getBodyFixedFrame()
public EventDetector copy()
The following attributes are not deeply copied:
PVCoordinatesProviderThe following attributes are not deeply copied:
BodyShapecopy in interface EventDetectorcopy in class DistanceDetectorCopyright © 2025 CNES. All rights reserved.