Class PythonBodyShape

    • Constructor Detail

      • PythonBodyShape

        public PythonBodyShape()
    • Method Detail

      • pythonExtension

        public void pythonExtension​(long pythonObject)
        Part of JCC Python interface to object
      • pythonExtension

        public long pythonExtension()
        Part of JCC Python interface to object
      • pythonDecRef

        public void pythonDecRef()
        Part of JCC Python interface to object
      • getBodyFrame

        public Frame getBodyFrame()
        Get body frame related to body shape. Extension point for Python.
        Specified by:
        getBodyFrame in interface BodyShape
        Returns:
        body frame related to body shape
      • getIntersectionPoint

        public GeodeticPoint getIntersectionPoint​(Line line,
                                                  Vector3D close,
                                                  Frame frame,
                                                  AbsoluteDate date)
        Get the intersection point of a line with the surface of the body. Extension point for Python.

        A line may have several intersection points with a closed surface (we consider the one point case as a degenerated two points case). The close parameter is used to select which of these points should be returned. The selected point is the one that is closest to the close point.

        Specified by:
        getIntersectionPoint in interface BodyShape
        Parameters:
        line - test line (may intersect the body or not)
        close - point used for intersections selection
        frame - frame in which line is expressed
        date - date of the line in given frame
        Returns:
        intersection point at altitude zero or null if the line does not intersect the surface
      • getIntersectionPoint

        public <T extends CalculusFieldElement<T>> FieldGeodeticPoint<T> getIntersectionPoint​(FieldLine<T> line,
                                                                                              FieldVector3D<T> close,
                                                                                              Frame frame,
                                                                                              FieldAbsoluteDate<T> date)
        Get the intersection point of a line with the surface of the body.

        A line may have several intersection points with a closed surface (we consider the one point case as a degenerated two points case). The close parameter is used to select which of these points should be returned. The selected point is the one that is closest to the close point.

        Specified by:
        getIntersectionPoint in interface BodyShape
        Type Parameters:
        T - type of the field elements
        Parameters:
        line - test line (may intersect the body or not)
        close - point used for intersections selection
        frame - frame in which line is expressed
        date - date of the line in given frame
        Returns:
        intersection point at altitude zero or null if the line does not intersect the surface
      • transform

        public GeodeticPoint transform​(Vector3D point,
                                       Frame frame,
                                       AbsoluteDate date)
        Transform a Cartesian point to a surface-relative point.
        Specified by:
        transform in interface BodyShape
        Parameters:
        point - Cartesian point
        frame - frame in which Cartesian point is expressed
        date - date of the computation (used for frames conversions)
        Returns:
        point at the same location but as a surface-relative point
      • transform

        public <T extends CalculusFieldElement<T>> FieldGeodeticPoint<T> transform​(FieldVector3D<T> point,
                                                                                   Frame frame,
                                                                                   FieldAbsoluteDate<T> date)
        Transform a Cartesian point to a surface-relative point.
        Specified by:
        transform in interface BodyShape
        Type Parameters:
        T - type of the filed elements
        Parameters:
        point - Cartesian point
        frame - frame in which Cartesian point is expressed
        date - date of the computation (used for frames conversions)
        Returns:
        point at the same location but as a surface-relative point
      • transform

        public Vector3D transform​(GeodeticPoint point)
        Transform a surface-relative point to a Cartesian point.
        Specified by:
        transform in interface BodyShape
        Parameters:
        point - surface-relative point
        Returns:
        point at the same location but as a Cartesian point
      • transform

        public <T extends CalculusFieldElement<T>> FieldVector3D<T> transform​(FieldGeodeticPoint<T> point)
        Transform a surface-relative point to a Cartesian point.
        Specified by:
        transform in interface BodyShape
        Type Parameters:
        T - type of the filed elements
        Parameters:
        point - surface-relative point
        Returns:
        point at the same location but as a Cartesian point