Click or drag to resize

CentralBodyIntersectionDoesIntersect Method (Cartesian, Cartesian, Cartesian, Cartesian, Int32, Double, Double)

Determines if an orbit will intersect the planet specified by the corresponding gravitational parameter and geocentric radius of intersection.

Namespace:  AGI.Foundation.Celestial
Assembly:  AGI.Foundation.Models (in AGI.Foundation.Models.dll) Version: 24.3.420.0 (24.3.420.0)
Syntax
public static bool DoesIntersect(
	Cartesian positionOne,
	Cartesian velocityOne,
	Cartesian positionTwo,
	Cartesian velocityTwo,
	int numberOfRevs,
	double geocentricRadiusOfIntersection,
	double gravitationalParameter
)

Parameters

positionOne
Type: AGI.Foundation.CoordinatesCartesian
The first inertial position.
velocityOne
Type: AGI.Foundation.CoordinatesCartesian
The first inertial velocity.
positionTwo
Type: AGI.Foundation.CoordinatesCartesian
The second inertial position.
velocityTwo
Type: AGI.Foundation.CoordinatesCartesian
The second inertial velocity.
numberOfRevs
Type: SystemInt32
Number of revolutions in the orbit.
geocentricRadiusOfIntersection
Type: SystemDouble
The geocentric radius of intersection. For example, planetary semimajor axis plus 100 km.
gravitationalParameter
Type: SystemDouble
The gravitational parameter of the planet.

Return Value

Type: Boolean
if the orbit falls below geocentricRadiusOfIntersection between the two positions on the orbit, otherwise.
Remarks

Intersection is checked for the portion of the orbit between the first and second input positions. If multiple revolutions are input then the closest point on the orbit determines if the orbit intersects the planet.

The first velocity and position determines the orbit/transfer orbit. Input should be in the inertial frame of the planet in question.

Note that there is no effort made by this method to check the validity of the input.

See Also