public class EllipsoidComplexSurfaceCurve extends EllipsoidSurfaceCurve
| Modifier and Type | Method and Description | 
|---|---|
CartographicExtent | 
computeCartographicExtent()
Computes the cartographic bounding box which completely contains all the constituent curves. 
 | 
protected int | 
computeHashCode()
Computes the hash code for this curve. 
 | 
static EllipsoidComplexSurfaceCurve | 
createCurve(EllipsoidSurfaceCurve... curves)
Constructs a complex curve based on a given set of constituent curves. 
 | 
static EllipsoidComplexSurfaceCurve | 
createCurve(List<EllipsoidSurfaceCurve> curves)
Constructs a complex curve based on a given set of constituent curves. 
 | 
static EllipsoidComplexSurfaceCurve | 
createGeodesic(Ellipsoid shape,
              Iterable<Cartographic> nodes)
Creates a complex curve made up of  
EllipsoidGeodesics which connect the given set of
    nodes on the surface of the ellipsoid shape. | 
static EllipsoidComplexSurfaceCurve | 
createRhumbLine(Ellipsoid shape,
               Iterable<Cartographic> nodes)
Creates a complex curve made up of  
EllipsoidRhumbLines which connect the given set of
    nodes on the surface of the ellipsoid shape. | 
boolean | 
equalsType(EllipsoidSurfaceCurve other)
Indicates whether the current object is equal to another object of the same type. 
 | 
Cartographic | 
findClosestPointOnCurve(Cartographic point,
                       double[] distance)
Finds the closest point on the curve from the input point. 
 | 
List<EllipsoidSurfaceCurve> | 
getCurves()
Gets a read only list of the constituent curves which comprise the overall curve. 
 | 
List<Cartographic> | 
getDiscretePoints(double granularity)
Get a set of points which discretely represent the overall curve. 
 | 
Ellipsoid | 
getEllipsoid()
Gets the ellipsoid reference surface on which the curve lies. 
 | 
Cartographic | 
getFinalPoint()
Gets the final planetodetic point on the path. 
 | 
Cartographic | 
getInitialPoint()
Gets the initial planetodetic point on the path. 
 | 
double | 
getSurfaceDistance()
Gets the total distance along the curve to the location of the final point. 
 | 
Cartographic | 
interpolateUsingFraction(double fraction)
Provides the location of a point at the indicated portion along the curve. 
 | 
Cartographic | 
interpolateUsingSurfaceDistance(double surfaceDistance)
Provides the location of a point at the indicated distance along the curve. 
 | 
computeIntersection, equals, findClosestPointOnCurve, hashCode@Nonnull public static EllipsoidComplexSurfaceCurve createCurve(@Nonnull EllipsoidSurfaceCurve... curves)
curves - The set of constituent curves.@Nonnull public static EllipsoidComplexSurfaceCurve createCurve(@Nonnull List<EllipsoidSurfaceCurve> curves)
curves - The set of constituent curves.@Nonnull public static EllipsoidComplexSurfaceCurve createGeodesic(@Nonnull Ellipsoid shape, @Nonnull Iterable<Cartographic> nodes)
EllipsoidGeodesics which connect the given set of
    nodes on the surface of the ellipsoid shape.shape - The ellipsoid reference surface.nodes - The set of points forming the nodes of the complex curve.ArgumentOutOfRangeException - Thrown if the number of nodes is less than 2.@Nonnull public static EllipsoidComplexSurfaceCurve createRhumbLine(@Nonnull Ellipsoid shape, @Nonnull Iterable<Cartographic> nodes)
EllipsoidRhumbLines which connect the given set of
    nodes on the surface of the ellipsoid shape.shape - The ellipsoid reference surface.nodes - The set of points forming the nodes of the complex curve.ArgumentOutOfRangeException - Thrown if the number of nodes is less than 2.@Nonnull public Cartographic getInitialPoint()
getInitialPoint in class EllipsoidSurfaceCurve@Nonnull public Cartographic getFinalPoint()
getFinalPoint in class EllipsoidSurfaceCurvepublic double getSurfaceDistance()
getSurfaceDistance in class EllipsoidSurfaceCurve@Nonnull public final List<EllipsoidSurfaceCurve> getCurves()
public Ellipsoid getEllipsoid()
getEllipsoid in class EllipsoidSurfaceCurve@Nonnull public Cartographic interpolateUsingFraction(double fraction)
interpolateUsingFraction in class EllipsoidSurfaceCurvefraction - The portion of the distance between the initial and final points.@Nonnull public Cartographic interpolateUsingSurfaceDistance(double surfaceDistance)
interpolateUsingSurfaceDistance in class EllipsoidSurfaceCurvesurfaceDistance - The distance from the initial point to the point of interest along the rhumb line.public CartographicExtent computeCartographicExtent()
computeCartographicExtent in class EllipsoidSurfaceCurve@Nonnull public Cartographic findClosestPointOnCurve(@Nonnull Cartographic point, @Nonnull double[] distance)
The default implementation is a golden section search on the curve. The built-in types (geodesic, rhumb, and complex) have their own precise algorithms.
findClosestPointOnCurve in class EllipsoidSurfaceCurvepoint - The input point. The point will be on the ellipsoid surface at this location.distance - The surface distance between the point and the point on the curve.public List<Cartographic> getDiscretePoints(double granularity)
getDiscretePoints in class EllipsoidSurfaceCurvegranularity - The maximum angular distance between the discrete points with respect to the center of
    the Ellipsoid (get).  A small granularity will yield a more precise representation
    of the curve.ArgumentOutOfRangeException - The granularity must be positive and non-zero.protected int computeHashCode()
computeHashCode in class EllipsoidSurfaceCurvepublic boolean equalsType(EllipsoidSurfaceCurve other)
IEquatableequalsType in interface IEquatable<EllipsoidSurfaceCurve>equalsType in class EllipsoidSurfaceCurveother - An object to compare with this object.