Allow writing an AEM file from a list of SpacecraftStates
This issue is related to this thread on the forum.
A list of positions/velocities can be written to an OEM file as follows :
OrekitEphemerisFile ephemerisFile = new OrekitEphemerisFile(); OrekitEphemerisFile.OrekitSatelliteEphemeris satelliteEphemeris = ephemerisFile.addSatellite(satelliteId); satelliteEphemeris.addNewSegment(spacecraftStates); OEMWriter ephemerisFileWriter = new OEMWriter(OEMWriter.InterpolationMethod.HERMITE, originator, satelliteId, spaceObjectName); ephemerisFileWriter.write(outputFilePath, ephemerisFile);
However, @bryan explained in the thread that this method doesn't work for AEM files, because
AEMFile doesn't implement
AemSatelliteEphemeris doesn't implement
SatelliteEphemeris. The reason for that is these interfaces have methods that are specific to position/velocity ephemeris, and incompatible with attitude files. He suggested adding exceptions for those cases.