IntersectionTests
DOC_TBA
Methods
-
<static> grazingAltitudeLocation
-
Provides the point along the ray which is nearest to the ellipsoid.
Parameters:
Name Type Description ray
Ray The ray. ellipsoid
Ellipsoid The ellipsoid. Throws:
-
DeveloperError : ray is required.
-
DeveloperError : ellipsoid is required.
Returns:
Cartesian The nearest planetodetic point on the ray. -
-
<static> lineSegmentPlane
-
Computes the intersection of a line segment and a plane.
Parameters:
Name Type Argument Description endPoint0
Cartesian3 An end point of the line segment. endPoint1
Cartesian3 The other end point of the line segment. plane
Plane The plane. result
Cartesian3 <optional>
The object onto which to store the result. Throws:
-
DeveloperError : endPoint0 is required.
-
DeveloperError : endPoint1 is required.
-
DeveloperError : plane is required.
Returns:
Cartesian3 The intersection point or undefined if there is no intersection.Example
var origin = ellipsoid.cartographicToCartesian(Cartographic.fromDegrees(-75.59777, 40.03883, 0.0)); var normal = ellipsoid.geodeticSurfaceNormal(origin); var plane = Plane.fromPointNormal(origin, normal); var p0 = new Cartesian3(...); var p1 = new Cartesian3(...); // find the intersection of the line segment from p0 to p1 and the tangent plane at origin. var intersection = IntersectionTests.lineSegmentPlane(p0, p1, plane);
-
-
<static> rayEllipsoid
-
Computes the intersection points of a ray with an ellipsoid.
Parameters:
Name Type Description ray
Ray The ray. ellipsoid
Ellipsoid The ellipsoid. Throws:
-
DeveloperError : ray is required.
-
DeveloperError : ellipsoid is required.
Returns:
Object An object with the first (start
) and the second (stop
) intersection scalars for points along the ray or undefined if there are no intersections. -
-
<static> rayPlane
-
Computes the intersection of a ray and a plane.
Parameters:
Name Type Description ray
Ray The ray. plane
Plane The plane. Throws:
-
DeveloperError : ray is required.
-
DeveloperError : plane is required.
Returns:
Cartesian3 The intersection point or undefined if there is no intersections. -
-
<static> trianglePlaneIntersection
-
Computes the intersection of a triangle and a plane
Parameters:
Name Type Description p0
Cartesian3 First point of the triangle p1
Cartesian3 Second point of the triangle p2
Cartesian3 Third point of the triangle plane
Plane Intersection plane Throws:
DeveloperError : p0, p1, p2, and plane are required.Returns:
Object An object with propertiespositions
andindices
, which are arrays that represent three triangles that do not cross the plane. (Undefined if no intersection exists)Example
var origin = ellipsoid.cartographicToCartesian(Cartographic.fromDegrees(-75.59777, 40.03883, 0.0)); var normal = ellipsoid.geodeticSurfaceNormal(origin); var plane = Plane.fromPointNormal(origin, normal); var p0 = new Cartesian3(...); var p1 = new Cartesian3(...); var p2 = new Cartesian3(...); // convert the triangle composed of points (p0, p1, p2) to three triangles that don't cross the plane var triangles = IntersectionTests.lineSegmentPlane(p0, p1, p2, plane);