public class PlaneCrossingDetector extends AbstractDetector
EventDetector.Action| Modifier and Type | Field and Description |
|---|---|
protected Frame |
referenceFrame
Frame for plane definition.
|
actionAtEntry, actionAtExit, DEFAULT_MAXCHECK, DEFAULT_MAXITER, DEFAULT_THRESHOLD, removeAtEntry, removeAtExit, shouldBeRemovedFlagDECREASING, INCREASING, INCREASING_DECREASING| Constructor and Description |
|---|
PlaneCrossingDetector(Vector3D normalVector,
Frame referenceFrame,
EventDetector.Action ascendingCrossing,
EventDetector.Action descendingCrossing,
boolean removeIncreasingCrossing,
boolean removeDecreasingCrossing,
double maxCheckIn,
double thresholdIn)
Constructor with default coordinates (0,0,0) for reference point and actions to be performed in both directions.
|
PlaneCrossingDetector(Vector3D normalVector,
Frame referenceFrame,
int slopeSelection,
EventDetector.Action action,
boolean removeCrossing,
double maxCheckIn,
double thresholdIn)
Constructor with default coordinates (0,0,0) for reference point and one detection in the given direction.
|
PlaneCrossingDetector(Vector3D point,
Vector3D normalVector,
Frame referenceFrame,
EventDetector.Action increasingCrossing,
EventDetector.Action decreasingCrossing,
boolean removeAscendingCrossing,
boolean removeDescendingCrossing,
double maxCheckIn,
double thresholdIn)
Constructor for case with different actions at increasing crossing and decreasing crossing.
|
PlaneCrossingDetector(Vector3D point,
Vector3D normalVector,
Frame referenceFrame,
int slopeSelection,
EventDetector.Action action,
boolean removeCrossing,
double maxCheckIn,
double thresholdIn)
Constructor for case with action at descending or ascending crossing.
|
| Modifier and Type | Method and Description |
|---|---|
EventDetector |
copy()
A copy of the detector.
|
EventDetector.Action |
eventOccurred(SpacecraftState s,
boolean increasing,
boolean forward)
Handle an event and choose what to do next.
|
double |
g(SpacecraftState s)
Event detection function.
|
Frame |
getFrame()
Getter for the frame for plane definition.
|
Vector3D |
getNormalVector()
Getter for the normal vector to the plane used for plane definition.
|
Vector3D |
getPoint()
Getter for the point belonging to the plane used for plane definition.
|
filterEvent, getActionAtEntry, getActionAtExit, getMaxCheckInterval, getMaxIterationCount, getSlopeSelection, getThreshold, init, isRemoveAtEntry, isRemoveAtExit, logEventsOverTimeInterval, resetState, setMaxCheckInterval, setMaxIter, shouldBeRemovedprotected final Frame referenceFrame
public PlaneCrossingDetector(Vector3D normalVector, Frame referenceFrame, int slopeSelection, EventDetector.Action action, boolean removeCrossing, double maxCheckIn, double thresholdIn)
slopeSelection - The direction in which the detection is performed.referenceFrame - The reference frame where the plane is considered.normalVector - A normal vector to the plane.action - The action to perform at considered crossing.removeCrossing - True if the detector has to be removed after first detection.maxCheckIn - Maximum checking interval (s).thresholdIn - Convergence threshold (s).public PlaneCrossingDetector(Vector3D normalVector, Frame referenceFrame, EventDetector.Action ascendingCrossing, EventDetector.Action descendingCrossing, boolean removeIncreasingCrossing, boolean removeDecreasingCrossing, double maxCheckIn, double thresholdIn)
referenceFrame - The reference frame where the plane is defined.normalVector - A normal vector to the plane.ascendingCrossing - The action to perform at ascending crossing.descendingCrossing - The action to perform at descending crossing.removeIncreasingCrossing - True if the detector at increasing crossing has to be removed after detection.removeDecreasingCrossing - True if the detector at decreasing crossing has to be removed after detection.maxCheckIn - Maximum checking interval (s).thresholdIn - Convergence threshold (s).public PlaneCrossingDetector(Vector3D point, Vector3D normalVector, Frame referenceFrame, int slopeSelection, EventDetector.Action action, boolean removeCrossing, double maxCheckIn, double thresholdIn)
slopeSelection - The direction in which the detection has to be performed.referenceFrame - The reference frame where the plane is defined.point - A point belonging to the plane.normalVector - A normal vector to the plane.action - The action to be performed at considered crossing.removeCrossing - True if the detector has to be removed after first detection.maxCheckIn - Maximum checking interval (s).thresholdIn - Convergence threshold (s).public PlaneCrossingDetector(Vector3D point, Vector3D normalVector, Frame referenceFrame, EventDetector.Action increasingCrossing, EventDetector.Action decreasingCrossing, boolean removeAscendingCrossing, boolean removeDescendingCrossing, double maxCheckIn, double thresholdIn)
referenceFrame - The reference frame where the plane is defined.point - A point belonging to the plane.normalVector - A normal vector to the plane.increasingCrossing - The action to be performed at increasing crossing.decreasingCrossing - The action to be performed at decreasing crossing.removeIncreasingCrossing - True if the detection at increasing crossing has to be performed once.removeDecreasingCrossing - True if the detection at decreasing crossing has to be performed once.maxCheckIn - Maximum checking interval (s).thresholdIn - Convergence threshold (s).public Frame getFrame()
public Vector3D getPoint()
public Vector3D getNormalVector()
public EventDetector copy()
EventDetectorpublic double g(SpacecraftState s) throws PatriusException
g in interface EventDetectorg in class AbstractDetectors - Spacecraft state at a given moment.PatriusException - if some specific error occurspublic EventDetector.Action eventOccurred(SpacecraftState s, boolean increasing, boolean forward) throws PatriusException
AbstractDetector
The scheduling between this method and the PatriusStepHandler method handleStep() is to call this method first
and handleStep afterwards. This scheduling allows the propagator to pass true as the
isLast parameter to the step handler to make it aware the step will be the last one if this method
returns EventDetector.Action.STOP. As the interpolator may be used to navigate back throughout the last
step (as OrekitStepNormalizer does for example), user code called by this method and user code called by step handlers
may experience apparently out of order values of the independent time variable. As an example, if the same user
object implements both this EventDetector interface and the OrekitFixedStepHandler interface, a forward integration may call its eventOccurred method
with a state at 2000-01-01T00:00:10 first and call its handleStep method with a state at
2000-01-01T00:00:09 afterwards. Such out of order calls are limited to the size of the integration step for
variable step handlers and to the size of
the fixed step for fixed step
handlers.
eventOccurred in interface EventDetectoreventOccurred in class AbstractDetectors - The spacecraft state at the moment the event occurs.increasing - if true, the value of the switching function increases when times increases around eventforward - if true, the integration variable (time) increases during integration.PatriusExceptionCopyright © 2025 CNES. All rights reserved.