## com.vividsolutions.jts.algorithm
Class BoundaryNodeRule.EndPointBoundaryNodeRule

    java.lang.Object
      com.vividsolutions.jts.algorithm.BoundaryNodeRule.EndPointBoundaryNodeRule

All Implemented Interfaces:
  BoundaryNodeRule

Enclosing class:
  BoundaryNodeRule

public static class BoundaryNodeRule.EndPointBoundaryNodeRule
extends java.lang.Object
implements BoundaryNodeRule

A `BoundaryNodeRule` which specifies that any points which are endpoints of lineal components are in the boundary of the parent geometry. This corresponds to the "intuitive" topological definition of boundary. Under this rule `LinearRing`s have a non-empty boundary (the common endpoint of the underlying LineString).

This rule is useful when dealing with linear networks. For example, it can be used to check whether linear networks are correctly noded. The usual network topology constraint is that linear segments may touch only at endpoints. In the case of a segment touching a closed segment (ring) at one point, the Mod2 rule cannot distinguish between the permitted case of touching at the node point and the invalid case of touching at some other interior (non-node) point. The EndPoint rule does distinguish between these cases, so is more appropriate for use.

Version:
  1.7
Author:
  Martin Davis

Nested Class Summary

Nested classes inherited from class com.vividsolutions.jts.algorithm.BoundaryNodeRule
`BoundaryNodeRule.EndPointBoundaryNodeRule, BoundaryNodeRule.Mod2BoundaryNodeRule, BoundaryNodeRule.MonoValentEndPointBoundaryNodeRule, BoundaryNodeRule.MultiValentEndPointBoundaryNodeRule`

Field Summary

Fields inherited from interface com.vividsolutions.jts.algorithm.BoundaryNodeRule
`ENDPOINT_BOUNDARY_RULE, MOD2_BOUNDARY_RULE, MONOVALENT_ENDPOINT_BOUNDARY_RULE, MULTIVALENT_ENDPOINT_BOUNDARY_RULE, OGC_SFS_BOUNDARY_RULE`

Constructor Summary
`BoundaryNodeRule.EndPointBoundaryNodeRule()`

Method Summary
`boolean` `isInBoundary(int boundaryCount)` Tests whether a point that lies in `boundaryCount` geometry component boundaries is considered to form part of the boundary of the parent geometry.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### BoundaryNodeRule.EndPointBoundaryNodeRule

    public BoundaryNodeRule.EndPointBoundaryNodeRule()

Method Detail

### isInBoundary

    public boolean isInBoundary(int boundaryCount)

  Description copied from interface: `BoundaryNodeRule`
  Tests whether a point that lies in `boundaryCount` geometry component boundaries is considered to form part of the boundary of the parent geometry.

  Specified by:
    `isInBoundary` in interface `BoundaryNodeRule`
  Parameters:
    `boundaryCount` - the number of component boundaries that this point occurs in
  Returns:
    true if points in this number of boundaries lie in the parent boundary