BoundaryNodeRule class abstract
An interface for rules which determine whether node points which are in boundaries of {@link Lineal} geometry components are in the boundary of the parent geometry collection. The SFS specifies a single kind of boundary node rule, the {@link Mod2BoundaryNodeRule} rule. However, other kinds of Boundary Node Rules are appropriate in specific situations (for instance, linear network topology usually follows the {@link EndPointBoundaryNodeRule}.) Some JTS operations (such as {@link RelateOp}, {@link BoundaryOp} and {@link IsSimpleOp}) allow the BoundaryNodeRule to be specified, and respect the supplied rule when computing the results of the operation.
An example use case for a non-SFS-standard Boundary Node Rule is that of checking that a set of {@link LineString}s have valid linear network topology, when turn-arounds are represented as closed rings. In this situation, the entry road to the turn-around is only valid when it touches the turn-around ring at the single (common) endpoint. This is equivalent to requiring the set of LineStrings to be simple under the {@link EndPointBoundaryNodeRule}. The SFS-standard {@link Mod2BoundaryNodeRule} is not sufficient to perform this test, since it states that closed rings have no boundary points.
This interface and its subclasses follow the Strategy design pattern.
@author Martin Davis @version 1.7
@see RelateOp @see BoundaryOp @see IsSimpleOp @see PointLocator
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
isInBoundary(
int boundaryCount) → bool - Tests whether a point that lies in boundaryCount geometry component boundaries is considered to form part of the boundary of the parent geometry.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- ENDPOINT_BOUNDARY_RULE → BoundaryNodeRule
-
The Endpoint Boundary Node Rule.
@see EndPointBoundaryNodeRule
final
- MOD2_BOUNDARY_RULE → BoundaryNodeRule
-
The Mod-2 Boundary Node Rule (which is the rule specified in the OGC SFS).
@see Mod2BoundaryNodeRule
final
- MONOVALENT_ENDPOINT_BOUNDARY_RULE → BoundaryNodeRule
-
The Monovalent Endpoint Boundary Node Rule.
@see MonoValentEndPointBoundaryNodeRule
final
- MULTIVALENT_ENDPOINT_BOUNDARY_RULE → BoundaryNodeRule
-
The MultiValent Endpoint Boundary Node Rule.
@see MultiValentEndPointBoundaryNodeRule
final
- OGC_SFS_BOUNDARY_RULE → BoundaryNodeRule
-
The Boundary Node Rule specified by the OGC Simple Features Specification,
which is the same as the Mod-2 rule.
@see Mod2BoundaryNodeRule
final