FieldOfViewDetector
and CircularFieldOfView
. Note that FieldOfViewDetector.g(SpacecraftState)
has the
opposite sign convention of g(SpacecraftState)
.@Deprecated public class CircularFieldOfViewDetector extends AbstractDetector<CircularFieldOfViewDetector>
This class handle fields of view with a circular boundary.
The default implementation behavior is to continue
propagation at FOV entry and to stop
propagation
at FOV exit. This can be changed by calling
AbstractDetector.withHandler(EventHandler)
after construction.
Propagator.addEventDetector(EventDetector)
,
FieldOfViewDetector
,
VisibilityTrigger
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Constructor and Description |
---|
CircularFieldOfViewDetector(double maxCheck,
PVCoordinatesProvider pvTarget,
double radiusTarget,
VisibilityTrigger trigger,
Vector3D center,
double halfAperture)
Deprecated.
Build a new instance.
|
CircularFieldOfViewDetector(double maxCheck,
PVCoordinatesProvider pvTarget,
Vector3D center,
double halfAperture)
Deprecated.
Build a new instance.
|
Modifier and Type | Method and Description |
---|---|
protected CircularFieldOfViewDetector |
create(double newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler<? super CircularFieldOfViewDetector> newHandler)
Deprecated.
Build a new instance.
|
double |
g(SpacecraftState s)
Deprecated.
Compute the value of the switching function.
|
Vector3D |
getCenter()
Deprecated.
Get the direction of FOV center.
|
double |
getHalfAperture()
Deprecated.
Get FOV half aperture angle.
|
PVCoordinatesProvider |
getPVTarget()
Deprecated.
Get the position/velocity provider of the target .
|
eventOccurred, getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, resetState, withHandler, withMaxCheck, withMaxIter, withThreshold
public CircularFieldOfViewDetector(double maxCheck, PVCoordinatesProvider pvTarget, Vector3D center, double halfAperture)
The maximal interval between distance to FOV boundary checks should be smaller than the half duration of the minimal pass to handle, otherwise some short passes could be missed.
maxCheck
- maximal interval in secondspvTarget
- Position/velocity provider of the considered targetcenter
- Direction of the FOV center, in spacecraft framehalfAperture
- FOV half aperture anglepublic CircularFieldOfViewDetector(double maxCheck, PVCoordinatesProvider pvTarget, double radiusTarget, VisibilityTrigger trigger, Vector3D center, double halfAperture)
The maximal interval between distance to FOV boundary checks should be smaller than the half duration of the minimal pass to handle, otherwise some short passes could be missed.
maxCheck
- maximal interval in secondspvTarget
- Position/velocity provider of the considered targetradiusTarget
- radius of the target, considered to be a spherical body (m)trigger
- visibility trigger for spherical bodiecenter
- Direction of the FOV center, in spacecraft framehalfAperture
- FOV half aperture angleprotected CircularFieldOfViewDetector create(double newMaxCheck, double newThreshold, int newMaxIter, EventHandler<? super CircularFieldOfViewDetector> newHandler)
create
in class AbstractDetector<CircularFieldOfViewDetector>
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 PVCoordinatesProvider getPVTarget()
public Vector3D getCenter()
public double getHalfAperture()
public double g(SpacecraftState s)
The g function value is the difference between FOV half aperture and the
absolute value of the angle between target direction and field of view center,
plus or minus the target angular radius depending on the VisibilityTrigger
.
It is positive inside the FOV and negative outside.
g
in interface EventDetector
g
in class AbstractDetector<CircularFieldOfViewDetector>
s
- the current state information: date, kinematics, attitudeCopyright © 2002-2020 CS Group. All rights reserved.