ElevationMask for an instrument FOV onboard

Hello Forum,

A very happy new year to all the Orekit forum members.

I understand we can model a ground station antenna with an ElevationMask but is there a provision in Orekit to apply an ElevationMask for a FOV of an instrument onboard a satellite, which can further be used in one of the events during propagation?

Thanks in advance!

Hi @gowtham, happy new year to you

You can probably use the margin setting that exists in all Field Of View implementation for this purpose. Form the AbstractFieldOfView javadoc, we read:

margin: if positive, points outside of the raw FoV but close enough to the boundary are considered visible; if negative, points inside of the raw FoV but close enough to the boundary are considered not visible

Thanks, @luc, I came across this in the doc but the margin is a uniform extension or reduction in the boundary. What I am looking for is an ElevationMask available for a ground station antenna (similar to this) through which we can define the list of Elevation that might be unusable for some azimuths etc.

The use case would be, suppose an instrument FOV is a circular one but there are some obstructions (only at some azimuths) this can help in modeling the exact FOV of the instrument.

In this case, I think you should create a PolygonalFieldOfView itself built from a SphericalPolygonsSet as SphericalPolygonsSet supports any shape, including shape having holes or that are not path-connected (a long time ago, I have seen Earth sensors using bolometers with a field of view separated in four different patches).
Beware however that building a SphericalPolygonsSet can be difficult :cold_sweat: