public class GroundFieldOfViewDetector extends AbstractDetector<GroundFieldOfViewDetector>
Field Of View
attached to an arbitrary frame.
If you only want to compute access times then you should probably use
ElevationDetector
.
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
,
ElevationDetector
DEFAULT_MAX_ITER, DEFAULT_MAXCHECK, DEFAULT_THRESHOLD
Constructor and Description |
---|
GroundFieldOfViewDetector(Frame frame,
FieldOfView fov)
Build a new instance.
|
Modifier and Type | Method and Description |
---|---|
protected GroundFieldOfViewDetector |
create(double newMaxCheck,
double newThreshold,
int newMaxIter,
EventHandler<? super GroundFieldOfViewDetector> newHandler)
Build a new instance.
|
double |
g(SpacecraftState s)
Compute the value of the switching function.
|
FieldOfView |
getFieldOfView()
Get the Field Of View.
|
Frame |
getFrame()
Get the sensor reference frame.
|
eventOccurred, getHandler, getMaxCheckInterval, getMaxIterationCount, getThreshold, init, isForward, resetState, withHandler, withMaxCheck, withMaxIter, withThreshold
public GroundFieldOfViewDetector(Frame frame, FieldOfView fov)
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.
frame
- the reference frame attached to the sensor.fov
- Field Of View of the sensor.protected GroundFieldOfViewDetector create(double newMaxCheck, double newThreshold, int newMaxIter, EventHandler<? super GroundFieldOfViewDetector> newHandler)
create
in class AbstractDetector<GroundFieldOfViewDetector>
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 Frame getFrame()
public FieldOfView getFieldOfView()
public double g(SpacecraftState s)
The g function value is the angular offset between the satellite and
the Field Of View
boundary
. It is negative if the satellite is visible within the Field Of
View and positive if it is outside of the Field Of View, including the
margin.
As per the previous definition, when the satellite enters the Field Of View, a decreasing event is generated, and when the satellite leaves the Field Of View, an increasing event is generated.
g
in interface EventDetector
g
in class AbstractDetector<GroundFieldOfViewDetector>
s
- the current state information: date, kinematics, attitudeCopyright © 2002-2019 CS Systèmes d'information. All rights reserved.