[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orekit Users] Howto: Moving LLA Point Transformation?



On 08/21/2015 04:24 AM, Luc Maisonobe wrote:
> Hi James,
>
> Le 20/08/2015 22:11, schatzman-james@n-ask.com a écrit :
>> I can do something like
>>
>>             earthRefFrame = getItrfFrame();
>>             earth = new
>> OneAxisEllipsoid(Constants.WGS84_EARTH_EQUATORIAL_RADIUS,
>>                     Constants.WGS84_EARTH_FLATTENING,
>>                     earthRefFrame);
>>             TopocentricFrame staF = new TopocentricFrame(earth, lla, "anon");
>>   PVCoordinates pv = staF.getTransformTo(frame,
>> dateTime).transformPVCoordinates(      PVCoordinates.ZERO);
>>
>>
>> to compute the position and velocity  in an arbitrary frame corresponding to a
>> GeodeticPoint lla.
>>
>> However, suppose the point is moving in the geodetic frame. There does not
>> seem to be an analogous class to TopocentricFrame that allows for motion in
>> the local coordinate system.
>>
>> Short of some numerical approximation (e.g. finite differences), how can I
>> compute the velocity in a new coordinate system of a point moving in LLA?
> You are right, there were no derivatives associated with GeodeticPoint.
> I have therefore just added a new signature in the
> OneAxisEllipsoid.transform method to also provide two double arrays (one
> for godetic coordinates first derivatives, one for the second
> derivatives). See
> <https://www.orekit.org/forge/projects/orekit/repository/revisions/ef1bb1a875f943f478209008c6da94d91848684e>.
> For now, only the computation from geodetic point to Cartesian is available.

I think using DerivativeSturctures in the method interface or creating a
FieldGeodeticPoint<DerivativeStructure> would be a cleaner interface.
What do you think?

Best Regards,
Evan

> Does this meet your needs?
>
> best regards,
> Luc
>
>> Thanks!
>>