Polygonal Field Of View

Hello everyone,
I have a question related to the creation of the PolygonalFieldOfView.
I can see from the documentation page

PolygonalFieldOfView (OREKIT 12.0.1 API)

that I can create the field of view with two different constructors.
What are the main differences between those two? I could not understand it.

Moreover, looking at the tests performed here

src/test/java/org/orekit/geometry/fov/PolygonalFieldOfViewTest.java · 11.3.3 · Orekit / Orekit · GitLab

I can see that you create a “base” and a “fov” using the two different constructor in sequence. Can you explain to me why are you doing that and not just using the

PolygonalFieldOfView(Vector3D center, PolygonalFieldOfView.DefiningConeType coneType, Vector3D meridian, double radius, int n, double margin)

as the main “fov” element?
Thank you so much for your help.

The first constructor is more generic than the second one, as it allows to create field of view that have non regular shapes (even including holes, or with several non path-connected zones). This constructor reuires the user to have built the eventually complex zone beforehand.

The second constructor is dedicated to simple cases with regular shapes. IT build the zone by itself from the arguments.

You are right we could une only one of the constructors in the test. We use both only to test the constructor itself, it is a unit test.

@luc Thank you so much for the explanation.