Skip to content

TopologyValidator

Namespace: ThinkGeo.Core

public static class TopologyValidator

Inheritance ObjectTopologyValidator

Methods

PolygonsMustNotOverlap(IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustNotOverlap(IEnumerable<Feature> polygonFeatures)

Parameters

polygonFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustNotHaveGaps(IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustNotHaveGaps(IEnumerable<Feature> polygonFeatures)

Parameters

polygonFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustContainPoint(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustContainPoint(IEnumerable<Feature> polygonFeatures, IEnumerable<Feature> pointFeatures)

Parameters

polygonFeatures IEnumerable<Feature>

pointFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustBeWithinPolygons(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustBeWithinPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonBoundariesMustOverlapLines(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonBoundariesMustOverlapLines(IEnumerable<Feature> polygonFeatures, IEnumerable<Feature> lineFeatures)

Parameters

polygonFeatures IEnumerable<Feature>

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustOverlapPolygons(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustOverlapPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustNotOverlapPolygons(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustNotOverlapPolygons(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonsMustOverlapEachOther(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonsMustOverlapEachOther(IEnumerable<Feature> firstPolygonGroup, IEnumerable<Feature> secondPolygonGroup)

Parameters

firstPolygonGroup IEnumerable<Feature>

secondPolygonGroup IEnumerable<Feature>

Returns

TopologyValidationResult

PolygonBoundariesMustOverlapPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PolygonBoundariesMustOverlapPolygonBoundaries(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustFormClosedPolygon(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustFormClosedPolygon(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotHavePseudonodes(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotHavePseudonodes(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotOverlap(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotOverlap(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotSelfOverlap(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotSelfOverlap(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotIntersect(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotIntersect(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotSelfIntersect(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotSelfIntersect(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotSelfIntersectOrTouch(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotSelfIntersectOrTouch(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustBeSinglePart(IEnumerable<Feature>)

public static TopologyValidationResult LinesMustBeSinglePart(IEnumerable<Feature> lineFeatures)

Parameters

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustNotOverlapLines(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult LinesMustNotOverlapLines(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustBeCoveredByLines(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult LinesMustBeCoveredByLines(IEnumerable<Feature> featuresToValidateAgainst, IEnumerable<Feature> featuresToValidate)

Parameters

featuresToValidateAgainst IEnumerable<Feature>

featuresToValidate IEnumerable<Feature>

Returns

TopologyValidationResult

LineEndPointsMustTouchPoints(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult LineEndPointsMustTouchPoints(IEnumerable<Feature> lineFeatures, IEnumerable<Feature> pointFeatures)

Parameters

lineFeatures IEnumerable<Feature>

pointFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

LinesMustOverlapPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult LinesMustOverlapPolygonBoundaries(IEnumerable<Feature> lineFeatures, IEnumerable<Feature> polygonFeatures)

Parameters

lineFeatures IEnumerable<Feature>

polygonFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PointsMustBeWithinPolygons(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PointsMustBeWithinPolygons(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> polygonFeatures)

Parameters

pointFeatures IEnumerable<Feature>

polygonFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PointsMustTouchPolygonBoundaries(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PointsMustTouchPolygonBoundaries(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> polygonFeatures)

Parameters

pointFeatures IEnumerable<Feature>

polygonFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PointsMustTouchLineEndpoints(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PointsMustTouchLineEndpoints(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> lineFeatures)

Parameters

pointFeatures IEnumerable<Feature>

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

PointsMustTouchLines(IEnumerable<Feature>, IEnumerable<Feature>)

public static TopologyValidationResult PointsMustTouchLines(IEnumerable<Feature> pointFeatures, IEnumerable<Feature> lineFeatures)

Parameters

pointFeatures IEnumerable<Feature>

lineFeatures IEnumerable<Feature>

Returns

TopologyValidationResult

BuildRTreeIndex(IEnumerable<BaseShape>)

internal static STRtree<BaseShape> BuildRTreeIndex(IEnumerable<BaseShape> baseShapes)

Parameters

baseShapes IEnumerable<BaseShape>

Returns

STRtree<BaseShape>

IsPointOnTheLine(Vertex, Vertex, PointShape)

internal static bool IsPointOnTheLine(Vertex startVertex, Vertex endVertex, PointShape point)

Parameters

startVertex Vertex

endVertex Vertex

point PointShape

Returns

Boolean