Interface INeighborEdgeLocator

  • All Superinterfaces:
    IProcessUsingTin

    public interface INeighborEdgeLocator
    extends IProcessUsingTin
    Defines methods for a reusable instance of a class for searching a TIN and locating the neighboring edge. Intended for interpolation actions and similar applications. Note that many instances of this class are more efficient if they are reused over a stable TIN, but most be reset when the TIN changes (see IProcessUsingTin for more explanation).
    • Method Detail

      • getNeigborEdge

        IQuadEdge getNeigborEdge​(double x,
                                 double y)
        Gets a neighboring edge for the coordinates. If the coordinates are exterior to the tin, gets the outside reference of the nearest edge
        Parameters:
        x - a valid Cartesian coordinate consistent with the TIN
        y - a valid Cartesian coordinate consistent with the TIN
        Returns:
        A valid edge instance.
      • getEdgeWithNearestVertex

        NeighborEdgeVertex getEdgeWithNearestVertex​(double x,
                                                    double y)
        Locates the edge which begins with the vertex closest to the query coordinates (x,y). If the query point is to the interior of the TIN, it will be either on the indicated edge or inside the triangle that lies to the left of the edge. If the query point is to the exterior of the TIN, the neighboring edge may have an undefined geometry (e.g. it may be a a "ghost edge").

        Note that the edge included in the result is not necessarily the edge that lies closest to the query point. One of the other edges in the containing triangle may actually be closer to the query point. This method is concerned with the nearness of the starting vertex of the edge, not the edge itself. However, one of the edges in the containing triangle will, indeed, be the closest edge.

        Parameters:
        x - the X coordinate of the query point
        y - the Y coordinate of the query point
        Returns:
        a valid instance, or a null if the TIN is not bootstrapped.